BRANCHES revision 1.255 1 # $NetBSD: BRANCHES,v 1.255 2008/06/10 14:43:36 simonb Exp $
2 #
3 # This file contains a list of branches that exist in the NetBSD CVS
4 # tree and their current state.
5 #
6 # This list is necessarily incomplete.
7 #
8 # Within reason, developers may create branch and version tags at any
9 # time for any purpose. To avoid name collisions, private tags should
10 # have names which begin with the developer's NetBSD login name
11 # followed by a - or _ character (e.g., thorpej_scsipi,
12 # thorpej-signal)
13 #
14 # Any branch or version tag not listed here should be assumed to be
15 # private to the developer who created it. It is inappropriate for
16 # anyone other than that developer to commit, move tags, or otherwise
17 # modify the contents of the branch.
18 #
19 # Please update this file when a new branch is ready for consumption
20 # by folks other than the maintainer, or when the use or status of an
21 # existing branch changes significantly.
22 #
23 # Format:
24 # Branch: name of branch
25 # Description: Purpose and intention of the branch
26 # Status: Active/Terminated/Dormant
27 # Start Date: date first instantiated
28 # End Date: date it was Terminated/made_Dormant, if any
29 # Base Tag: netbsd-1-5-base, etc.
30 # Maintainer: Somebody to blame.
31 # Scope: Portion of the tree covered.
32 # Notes: Various other info, perhaps explanation of special tags,
33 # who-may-commit policies, etc.
34 #
35 # There are four sections to this file:
36 # Release branches
37 # Individual developers' branches (Active/Dormant)
38 # Individual developers' branches (Terminated), and
39 # other
40 #
41 # Entries within each section should be alphabetized.
42 #
43
44
45 # Release branches:
46
47 Branch: comdex-fall-1999
48 Description: Special release branch for pre-1.5 release at
49 Fall 1999 COMDEX.
50 Status: Terminated
51 Start Date:
52 End Date:
53 Base Tag: comdex-fall-1999-base
54 Maintainer: ?
55 Scope: Entire tree.
56 Notes:
57
58 Branch: netbsd-0-9
59 Description: The NetBSD 0.9 release branch
60 Status: Terminated
61 Start Date:
62 End Date:
63 Base Tag: netbsd-0-9-base
64 Maintainer: Release Engineering <releng (a] NetBSD.org>
65 Scope: Entire tree.
66 Notes: Subsidiary tags of: netbsd-0-9-ALPHA, netbsd-0-9-ALPHA2,
67 netbsd-0-9-BETA, netbsd-0-9-RELEASE.
68 Commits restricted to release engineering.
69
70 Branch: netbsd-1-0
71 Description: The NetBSD 1.0 release branch
72 Status: Terminated
73 Start Date:
74 End Date:
75 Base Tag: netbsd-1-0-base
76 Maintainer: Release Engineering <releng (a] NetBSD.org>
77 Scope: Entire tree.
78 Notes:
79 Commits restricted to release engineering.
80
81 Branch: netbsd-1-1
82 Description: The NetBSD 1.1 release branch
83 Status: Terminated
84 Start Date:
85 End Date:
86 Base Tag: netbsd-1-1-base
87 Maintainer: Release Engineering <releng (a] NetBSD.org>
88 Scope: Entire tree.
89 Notes:
90 Commits restricted to release engineering.
91
92 Branch: netbsd-1-2
93 Description: The NetBSD 1.2 release branch
94 Status: Terminated
95 Start Date:
96 End Date:
97 Base Tag: netbsd-1-2-base
98 Maintainer: Release Engineering <releng (a] NetBSD.org>
99 Scope: Entire tree.
100 Notes:
101 Commits restricted to release engineering.
102
103 Branch: netbsd-1-3
104 Description: The NetBSD 1.3 release branch
105 Status: Terminated
106 Start Date:
107 End Date:
108 Base Tag: netbsd-1-3-base
109 Maintainer: Release Engineering <releng (a] NetBSD.org>
110 Scope: Entire tree.
111 Notes:
112 Commits restricted to release engineering.
113
114 Branch: netbsd-1-4
115 Description: The NetBSD 1.4 release branch
116 Status: Terminated
117 Start Date: 1 Apr 2000
118 End Date:
119 Base Tag: netbsd-1-4-base
120 Maintainer: 1.4 Release Engineering <releng-1-4 (a] NetBSD.org>
121 Scope: Entire tree.
122 Notes:
123 Commits restricted to release engineering.
124
125 Branch: netbsd-1-5
126 Description: The NetBSD 1.5 release branch
127 Status: Terminated
128 Start Date: 20 Jun 2000
129 End Date: 26 Jan 2005
130 Base Tag: netbsd-1-5-base
131 Maintainer: 1.5 Release Engineering <releng-1-5 (a] NetBSD.org>
132 Scope: Entire tree.
133 Notes:
134 Commits restricted to release engineering.
135
136 Branch: netbsd-1-6
137 Description: The NetBSD 1.6 release branch
138 Status: Terminated
139 Start Date: 22 May 2002
140 End Date:
141 Base Tag: netbsd-1-6-base
142 Maintainer: 1.6 Release Engineering <releng-1-6 (a] NetBSD.org>
143 Scope: Entire tree.
144 Notes:
145 Commits restricted to Release Engineering.
146
147 Branch: netbsd-2
148 Description: The NetBSD 2 release branch
149 Status: Active
150 Start Date: 23 Dec 2004
151 End Date:
152 Base Tag: netbsd-2-base
153 Maintainer: 2 Release Engineering <releng-2 (a] NetBSD.org>
154 Scope: Entire tree. (src + xsrc)
155 Notes:
156 Commits restricted to Release Engineering.
157
158 Branch: netbsd-2-0
159 Description: Originally the NetBSD 2.0 release branch and now the branch
160 tracking security/critical fixes for the NetBSD 2.0 series
161 Status: Active
162 Start Date: 28 Mar 2004 and changed for security/critical function on
163 23 Dec 2004
164 End Date:
165 Base Tag: netbsd-2-0-base
166 Maintainer: 2.0 Release Engineering <releng-2-0 (a] NetBSD.org>
167 Scope: Entire tree. (src + xsrc)
168 Notes: Branch was re-purposed to security/critical change function
169 once 2.0 released. See netbsd-2 for current branch to track
170 NetBSD 2 tree.
171 Commits restricted to Release Engineering.
172
173 Branch: netbsd-2-1
174 Description: Tracking security/critical fixes for NetBSD 2.1
175 Status: Active
176 Start Date: 26 Oct 2005
177 End Date:
178 Base Tag: netbsd-2-1-RELEASE
179 Maintainer: 2 Release Engineering <releng-2 (a] NetBSD.org>
180 Scope: Entire tree. (src + xsrc)
181 Notes: Branch contains only security/critical fixes to
182 NetBSD 2.1. For new features, use netbsd-2 branch.
183 Commits restricted to Release Engineering.
184
185 Branch: netbsd-3
186 Description: The NetBSD 3 release branch
187 Status: Active
188 Start Date: 16 Mar 2005
189 End Date:
190 Base Tag: netbsd-3-base
191 Maintainer: 3 Release Engineering <releng-3 (a] NetBSD.org>
192 Scope: Entire tree. (src + xsrc)
193 Notes:
194 Commits restricted to Release Engineering.
195
196 Branch: netbsd-4
197 Description: The NetBSD 4 release branch
198 Status: Active
199 Start Date: 8 Aug 2006
200 End Date:
201 Base Tag: netbsd-4-base
202 Maintainer: 4 Release Engineering <releng-4 (a] NetBSD.org>
203 Scope: Entire tree. (src + xsrc)
204 Notes:
205 Commits restricted to Release Engineering.
206
207 ########################################################################
208 # Individual developers' branches (Active/Dormant):
209 ########################################################################
210
211 Branch: ad-audiomp
212 Description: Add MP locking to the audio drivers
213 Status: Active
214 Start Date: 28 February 2007
215 End Date:
216 Base Tag: ad-audiomp-base
217 Maintainer: Andrew Doran <ad (a] NetBSD.org>
218 Scope: kernel
219 Notes: Making the audio drivers MP safe is necessary before efforts
220 can be made to make the VM system MP safe. About 1/2 of the
221 drivers are converted, the remaining 1/2 need more changes.
222
223 As of import this is snapshot of work in progress and so
224 may not compile; in particular the midi changes are very
225 much "in progress". The audio component has been tested
226 and verified to work with emuxki and auvia. There may
227 be a locking issue in the ac97 code at boot.
228
229 The are two locks per device instance, an ISR lock and
230 a character device lock. The ISR lock replaces calls to
231 splaudio()/splx(), and will be held across calls to device
232 methods which were called at splaudio() before (e.g.
233 trigger_output). The character device lock is held across
234 calls to nearly all of the methods, excluding some only
235 used for initialization, e.g. get_locks. This needs to be
236 documented at merge time.
237
238 To test on a multi way x86 system, search for "mpsafe" in
239 x86/x86/intr.c and change IPL_SCHED to IPL_AUDIO. Run a job
240 that will acquire the ISR lock (depends on the hardware, but
241 "while true; do mixerctl -a > /dev/null; done" may suffice).
242 Play audio, run lockstat and verify that that there is
243 contention on the ISR lock.
244
245 Branch: bjh21-hydra
246 Description: Simtec Hydra support and ARM SMP in general
247 Status: Dormant
248 Start Date: 18 Oct 2002
249 End Date:
250 Base Tag: bjh21-hydra-base
251 Maintainer: Ben Harris <bjh21 (a] NetBSD.org>
252 Scope: sys/arch/arm sys/arch/acorn32
253 Notes: This code was on a branch because it involves changes to
254 cpuswitch.S which would otherwise make merging the
255 nathanw_sa branch difficult.
256
257 Branch: chris-arm-intr-rework
258 Description: Rework arm interrupt handling code
259 Status: Active
260 Start Date: 11 Aug 2007
261 End Date:
262 Base Tag: chris-arm-intr-rework-base
263 Maintainer: Chris Gilbert <chris (a] NetBSD.org>
264 Scope: sys/arch/arm sys/arch/cats (other arm archs to follow)
265 Notes: Rework arm interrupt code to provide a shared set of interrupt
266 routines, and allow improvements to be shared across all arm
267 based hardware.
268
269 Branch: cube-autoconf
270 Description: Renovate autoconf(9) API
271 Status: Active
272 Start Date: 11 Dec 2007
273 End Date:
274 Base Tag: cube-autoconf-base
275 Maintainer: Quentin Garnier <cube (a] NetBSD.org>
276 Scope: kernel usr.bin/config (and some other userland bits)
277 Notes: Address a number of issues the current autoconf(9) API has.
278
279 Branch: gmcgarry_ctxsw
280 Description: Separate scheduler from context-switch code
281 Status: Dormant
282 Start Date: 18 December 2002
283 End Date:
284 Base Tag: gmcgarry_ctxsw_base
285 Maintainer: Gregory McGarry <gmcgarry (a] NetBSD.org>
286 Scope: kernel
287 Notes: Removing knowledge of the scheduler and its run queues
288 from the machine-dependent context switch code is the
289 first step in cleaning up the scheduler. It is necessary
290 for the newlock branch, making the scheduler SMP friendly,
291 adding real-time scheduler extensions, and reducing the
292 number of code paths for LWP and proc switching.
293
294 Branch: gmcgarry_ucred
295 Description: Integrate and encapsulate user credentials
296 Status: Dormant
297 Start Date: 18 December 2002
298 End Date:
299 Base Tag: gmcgarry_ucred_base
300 Maintainer: Gregory McGarry <gmcgarry (a] NetBSD.org>
301 Scope: kernel
302 Notes: merge pcred and ucred and poolify
303
304 Branch: hpcarm-cleanup
305 Description: Fix build problems for hpcarm
306 Status: Active
307 Start Date: 31 July 2007
308 End Date:
309 Base Tag: hpcarm-cleanup-base
310 Maintainer: Robert Swindells <rjs (a] NetBSD.org>
311 Scope: kernel
312 Notes: Modify SA11x0 interrupt code to match PXA2x0 equivalent.
313
314 Branch: itohy-usb1
315 Description: USB stack overhaul, mostly DMA related
316 Status: Active
317 Start Date: 22 May 2007
318 End Date:
319 Base Tag: itohy-usb1-base
320 Maintainer: ITOH Yasufumi <itohy (a] NetBSD.org>
321 Scope: kernel
322 Notes: To check out the kernel source tree,
323 1. check out checkout script
324 cvs checkout -ritohy-usb1 src/sys/dev/usb/filelist
325 2. update files in the branch
326 sh -e src/sys/dev/usb/filelist
327
328 Branch: kame
329 Description: KAME Project
330 Status: Dormant
331 Start Date: 28 Jun 1999
332 End Date:
333 Base Tag:
334 Maintainer: Jun-ichiro itojun Hagino <itojun (a] NetBSD.org>
335 Scope: kernel
336 Notes: http://www.kame.net
337 Used for "reference" purposes for early part of KAME
338 integration effort. The branch is not actively used, as I
339 (itojun) use patch(1) and diff(1) for the KAME syncs.
340
341 Branch: keiichi-mipv6
342 Description: Developing Mobile IPv6 function
343 Status: Active
344 Start Date: 21 Feb 2008
345 End Date:
346 Base Tag: keiichi-mipv6-base
347 Maintainer: Keiichi Shima <keiichi (a] netbsd.org>
348 Scope: sys, sbin, libc/net, distrib/sets, share/man/
349 Notes: http://www.mobileip.jp/
350 Work on developing Mobile IPv6/NEMO BS functions and
351 related MIPv6 based advanced functions on NetBSD.
352 Please consult keiichi for joining this activity.
353
354 Branch: kent-audio2
355 Description: In-kernel audio mixer
356 Status: Active
357 Start Date: Sun Jan 16 2005
358 End Date:
359 Base Tag: kent-audio2-base
360 Maintainer: TAMURA Kent <kent (a] NetBSD.org>
361 Scope: kernel (audio device drivers)
362 Notes: http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html
363 Please consult with the maintainer before committing
364 to this branch.
365 This branch is not expected to be compilable yet.
366
367 Branch: matt-timespec
368 Description: Convert the kernel to struct timespec as its primary time
369 storage mechanism.
370 Status: Inactive
371 Start Date: 2005-02-19
372 End Date:
373 Base Tag:
374 Maintainer: Matt Thomas <matt (a] NetBSD.org>
375 Scope: kernel
376 Notes:
377
378 Branch: matt-mips64
379 Description: Rototill the mips code to support LP64 mips and N32/N64 ABIs
380 Status: Active
381 Start Date: 2007-07-17
382 End Date:
383 Base Tag: matt-mips64-base
384 Maintainer: Matt Thomas <matt (a] NetBSD.org>
385 Scope: kernel & userland
386 Notes:
387
388 Branch: matt-armv6
389 Description: Rototill the arm code to support features present in the
390 v6 of the ARM Architecture. Additionally, clean up things
391 along the way to use common practices.
392 Status: Active
393 Start Date: 2007-08-27
394 End Date:
395 Base Tag: matt-armv6-base
396 Maintainer: Matt Thomas <matt (a] NetBSD.org>
397 Scope: kernel & userland
398 Notes:
399
400 Branch: mjf-devfs2
401 Description: device file system supporting dynamic device nodes
402 Status: Active
403 Start Date: 21 February 2008
404 End Date:
405 Base Tag: mjf-devfs2-base
406 Maintainer: Matt Fleming <mjf (a] NetBSD.org>
407 Scope: kernel and userland
408 Notes: This branch will move away from the static device nodes that
409 are created with MAKEDEV scripts and allow nodes to be created
410 and removed dynamically as devices are attached and detached
411 from the machine.
412
413 Branch: mjf-ufs-trans
414 Description: file system transactions for ufs
415 Status: Active
416 Start Date: 12 March 2007
417 End Date:
418 Base Tag: mjf-ufs-trans-base
419 Maintainer: Matt Fleming <mjf (a] NetBSD.org>
420 Scope: kernel
421 Notes:
422
423 Branch: nick-net80211-sync
424 Description: sync of net80211 with FreeBSD
425 Status: Active
426 Start Date: 21 February 2008
427 End Date:
428 Base Tag: nick-net80211-base
429 Maintainer: Nick Hudson <skrll (a] NetBSD.org>
430 Scope: sys/
431 Notes: Sync'ing net80211 with FreeBSD and drivers update. The branch is
432 currently only the kernel, but will likely extend to some userland
433 areas.
434
435 Branch: pkgviews
436 Description: package views, enabling multiple conflicting packages to co-exist
437 Status: Active
438 Start Date: 22 July 2002
439 End Date:
440 Base Tag: pkgviews
441 Maintainer: Alistair Crooks <agc (a] NetBSD.org>
442 Scope: pkgsrc, basesrc/usr.sbin/pkg_install
443 Notes: A more flexible infrastructure for third-party packages by
444 allowing multiple conflicting packages and versions to co-exist
445 within the same tree
446
447 Branch: rpaulo-netinet-merge-pcb
448 Description: merge in6pcb with inpcb
449 Status: Dormant
450 Start Date: Wed Feb 01 2006
451 End Date:
452 Base Tag: rpaulo-netinet-merge-pcb-base
453 Maintainer: Rui Paulo <rpaulo (a] NetBSD.org>
454 Scope: src/sys
455 Notes: No longer active due to the lack of time. If you plan to
456 continue this branch, sys/netinet/in_pcb.h already contains
457 the proposed structure layout (which was roughly discussed
458 in the tech-net mailing list).
459 I also defined INP_*() macros to mimicate FreeBSD's inpcb
460 locking style, but currently they do nothing and are not
461 yet called at the correct places (needs discussion about
462 kernel fine-grained locking).
463 To continue this branch, one needs to read all the relevant
464 inpcb/in6pcb source files and change the function names,
465 structure names, structure fields according to the new
466 layout (in6pcb is gone).
467 Don't try to build a kernel from this branch because it won't
468 work. The missing pieces required to do a complete build
469 were not committed because they were incomplete and generated
470 panics.
471 You shouldn't need to worry about KAME syncs because
472 they did most of them by now.
473 After the work is done, you are required to test the branch
474 (before the merge to -current) with an interop IPv6 test.
475 More info at: http://www.tahi.org/
476
477 Branch: rtr-xorg-branch
478 Description: xorg & static build alterations to src/x11
479 Status: Active
480 Start Date: Nov 15 2004
481 End Date:
482 Base tag: rtr-xorg-branch-base
483 Maintainer: Tyler R. Retzlaff <rtr (a] NetBSD.org>
484 Scope: x11
485 distrib/sets/lists
486 share/mk/bsd.x11.mk
487 share/mk/bsd.own.mk
488 etc/mtree/NetBSD.dist
489 Notes: Requires parts of xsrc/xfree (HEAD)
490 xsrc/local, xsrc/xfree/xc/programs/Xserver/hw/netbsd
491 Requires xorg (XORG-6_8_1)
492
493 Branch: wrstuden-fixsa
494 Description: Fix a number of issues present with Scheduler Activations.
495 Status: Active
496 Start Date: 15 May 2007
497 End Date:
498 Base Tag: wrstuden-fixsa-base
499 Maintainer: Bill Stouder-Studenmund <wrstuden (a] NetBSD.org>
500 Scope: src, though all the interesting stuff is in the kernel
501 or lib/libpthread or maybe gdb.
502 Notes: This branch is based off of the netbsd-4 branch!
503 This branch is intended to stage improvements for the
504 Scheduler Activations system for NetBSD 4. Improvements
505 include not allocating memory while preparing to tsleep(),
506 reducing inappropriate upcall delivery (hopefully also
507 eliminating the need to mlock stacks), and being
508 able to pthread_kill() running threads. At this date,
509 most goals have been achieved. This branch also includes
510 fixes to gdb to support working with threaded apps.
511
512 Branch: wrstuden-revivesa
513 Description: Fix a number of issues present with Scheduler Activations.
514 Status: Active
515 Start Date: 10 May 2008
516 End Date:
517 Base Tag: wrstuden-revivesa-base
518 Maintainer: Bill Stouder-Studenmund <wrstuden (a] NetBSD.org>
519 Scope: src, though all the interesting stuff is in the kernel
520 Notes: This branch is intended to revive Scheduler Activations
521 in -current in the 5.0 era. This branch's main goal is
522 to re-add syscall compatability so that SA-based libpthread
523 programs can run with a -current kernel. 1:1 threading will
524 remain the NetBSD-default. This branch will re-add necessary
525 upcall support, and will also serve as a chance to clean
526 out cruft that had accumulated in the implementation over
527 time.
528
529 Branch: yamt-kmem
530 Description:
531 - separate kernel va allocation from kernel fault handling.
532 - make kmem_alloc interrupt-safe.
533 Status: Active
534 Start Date: Sun Dec 9 2007
535 End Date:
536 Base Tag: yamt-kmem-base3
537 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org>
538 Scope: src/sys (src/common is tagged but not branched)
539 Notes:
540 todo:
541 - investigate if PMAP_PREFER equivalent can be done
542 with vmem_xalloc. find a tester with hardware for it.
543 - g/c replaced code, including kmapent and malloc.
544 - consider to remove other submaps. eg. mb_map
545
546 Branch: yamt-nfs-mp
547 Description: make nfs client mp-safe
548 Status: Active
549 Start Date: Sun Apr 27 2008
550 End Date:
551 Base Tag: yamt-nfs-mp-base2
552 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org>
553 Scope: src/sys (src/common is tagged but not branched)
554 Notes:
555
556 Branch: yamt-pf42
557 Description: import newer pf from OpenBSD 4.2
558 Status: Active
559 Start Date: Sat Apr 19 2008
560 End Date:
561 Base Tag: yamt-pf42-base3
562 Maintainer: Peter Postma <peter (a] NetBSD.org>,
563 YAMAMOTO Takashi <yamt (a] NetBSD.org>
564 Scope: src
565 Notes: see sys/dist/pf/net/TODO
566
567 Branch: reinoud-bufcleanup
568 Description: implement and evaluate struct buf usage cleanup strategies.
569 Ideas currently in mind (preference for b):
570 a)
571 1. use of bio_ops per buffer.
572 2. allow chaining/overloading of functions in bio_ops
573 and provide some private context.
574 3. extend the bio_ops with commonly used functionality
575 like pending action counting, custom context passing,
576 last minute processing of buffer data, buffer cache
577 etc.
578 4. investigate the use of the kcont()
579 continuation-passing framework for async io
580 completion notification for bufs
581 ...
582 b)
583 1. all sequencing use of B_CALL replaced by
584 device-threads, if possible generic code around BUFQ
585 2. possibly use kcont() for async IO finished signaling
586 3. counter of pending and queued actions requestable
587 by IOCTL interface?
588 4. implement `last minute buffer fixup' calls and maybe
589 even finished I/O calls as vnode operations
590 ...
591 Status: Active
592 Start Date: Thu Mar 15 2007
593 End Date:
594 Base Tag: reinoud-bufcleanup-base
595 Maintainer: Reinoud Zandijk <reinoud (a] NetBSD.org>
596 Scope: src/sys and src/common
597 Notes: Used as experiment sandbox and if successful hopefully one day
598 to be integrated.
599
600 Branch: simonb-wapbl
601 Description: Wasabi's journaling filesystem support
602 Status: Active
603 Start Date: Tue Jun 10 2008
604 End Date:
605 Base Tag: simonb-wapbl-base
606 Maintainer: Simon Burge <simonb (a] NetBSD.org>
607 Scope: distrib/sets/lists/comp distrib/utils/sysinst include
608 sbin/fsck_ffs sbin/fsdb sbin/mount_ffs src/sys
609 Notes: Still has a number of issues:
610 - Can't log the root filesystem (or any FS if /dev isn't an
611 ffs). See kern/38057 - a fix for the PR has been committed
612 but at this stage it doesn't play well with WAPBL.
613 - Log must currently live at end of partition.
614 - No log locators.
615 - Some heavy workload performance issues on SMP machines.
616 - Some stability issues on SMP machines.
617
618 Branch: thorpej-atomic
619 Description: Implementation of an atomic memory operations API modeled
620 after the one in Solaris 10.
621 Status: Active
622 Start Date: Apr 11 2007
623 End Date:
624 Base tag: thorpej-atomic-base
625 Maintainer: Jason Thorpe <thorpej (a] netbsd.org>
626 Scope: src/common
627 src/sys
628 Notes: Base atomic primitives need to be implemented for
629 all of the supported architectures:
630
631 alpha DONE
632 arm DONE
633 hppa
634 i386 DONE
635 ia64
636 m68k DONE (except for 68010)
637 mips
638 ns32k
639 powerpc DONE except for membar_*()
640 powerpc64 DONE except for membar_*()
641 sh3
642 sparc DONE except for membar_*()
643 sparc64 DONE except for membar_*()
644 vax
645 x86_64 DONE
646
647 Tested:
648
649 alpha NO
650 arm NO
651 hppa NO
652 i386 NO
653 ia64 NO
654 m68k NO
655 mips NO
656 ns32k NO
657 powerpc NO
658 powerpc64 NO
659 sh3 NO
660 sparc NO
661 sparc64 NO
662 vax NO
663 x86_64 NO
664
665 TODO:
666
667 all - Need to replace mb_*() with membar_*().
668
669 - Audit MUTEX_CAS() and RWLOCK_CAS() uses
670 to see of membar_enter() is required here.
671
672 - Talk to ad@ -- figure out of non-atomic
673 mutex / rwlock release is actually safe.
674
675 arm - Consider using a RAS technique like
676 MIPS uses for _lock_cas() and the mutex
677 stubs. Possibly do more than one atomic
678 op as a RAS. Possibly implement mutex
679 stubs using the technique.
680
681 m68k - Need to do 68010 support.
682
683 i386 - Need to change when x86_patch() is called
684 so we can test ncpus.
685
686 powerpc - Figure out if we need barriers in the
687 atomic ops themselves (hopefully not!)
688
689 x86_64 - Need to change when x86_patch() is called
690 so we can test ncpus.
691
692 ########################################################################
693 # Individual developers' branches (Terminated):
694 ########################################################################
695
696 Branch: bouyer-scsipi
697 Description: Integration of atapi support
698 Status: Terminated
699 Start Date:
700 End Date:
701 Base Tag:
702 Maintainer: Manuel Bouyer <bouyer (a] NetBSD.org>
703 Scope: kernel
704 Notes: Superseded by thorpej_scsipi
705
706 Branch: bouyer-xen2
707 Description: update xen port to xen 2.0, with support for domain0 operations
708 Status: Terminated
709 Start Date: Dec 13 2004
710 End Date: Mar 10 2005
711 Base Tag: netbsd-2-base
712 Maintainer: Manuel Bouyer <bouyer (a] NetBSD.org>
713 Scope: src/sys/arch/xen
714 Notes:
715
716 Branch: bouyer-xenamd64
717 Description: add amd64 support to Xen and rework some parts to share more code between Xen and others
718 Status: Terminated
719 Start Date: 18 Oct 2007
720 End Date: 22 Nov 2007
721 Base Tag: bouyer-xenamd64-base
722 Maintainer: Manuel Bouyer <bouyer (a] NetBSD.org>
723 Scope: kernel
724 Notes:
725
726 Branch: bouyer-xeni386
727 Description: switch xen on i386 to the x86 pmap and the xen/x86/x86_xpmap.c bootstrap, and add i386 PAE support
728 Status: Terminated
729 Start Date: 10 Dec 2007
730 End Date: 23 Jan 2008
731 Base Tag: bouyer-xeni386-base
732 Maintainer: Manuel Bouyer <bouyer (a] NetBSD.org>
733 Scope: kernel
734 Notes:
735
736 Branch: chap-midi
737 Description: Renovation of MIDI support
738 Status: Terminated; merged to -current
739 Start Date: 19 May 2006
740 End Date: 30 Jun 2006
741 Base Tag: chap-midi-base
742 Maintainer: Chapman Flack <chap (a] NetBSD.org>
743 Scope: sys, share/man, usr.bin
744 Notes:
745
746 Branch: chs-ubc
747 Description: Unified Buffer Cache
748 Status: Terminated
749 Start Date:
750 End Date:
751 Base Tag: chs-ubc-base
752 Maintainer: Chuck Silvers <chs (a] NetBSD.org>
753 Scope: kernel
754 Notes:
755
756 Branch: chs-ubc2
757 Description: Unified Buffer Cache
758 Status: Terminated; merged to -current
759 Start Date:
760 End Date:
761 Base Tag: chs-ubc2-base, chs-ubc2-newbase
762 Maintainer: Chuck Silvers <chs (a] NetBSD.org>
763 Scope: kernel
764 Notes:
765
766 Branch: cjs-build-against-obj-dir
767 Description: ?
768 Status: ?
769 Start Date:
770 End Date:
771 Base Tag:
772 Maintainer: Curt Sampson <cjs (a] NetBSD.org>
773 Scope: Entire tree.
774 Notes:
775
776 Branch: eeh-paddr_t
777 Description: use separate types for virtual vs. physical addresses
778 Status: Terminated; merged to -current
779 Start Date:
780 End Date:
781 Base Tag: eeh-paddr_t-base
782 Maintainer: Eduardo Horvath <eeh (a] NetBSD.org>
783 Scope: kernel
784 Notes: This is needed to support 32-bit kernels on sparc64.
785
786 Branch: elad-kernelauth
787 Description: Native NetBSD implementation of Apple's kernel authorization
788 based on TN2127. This is a "clean-room" implementation to
789 avoid any licensing issues.
790 Status: Terminated; merged to -current
791 Start Date: Tue Mar 7 2006
792 End Date: Mon May 15 2006
793 Base Tag: elad-kernelauth-base
794 Maintainer: Elad Efrat <elad (a] NetBSD.org>
795 Scope: src/sys, src/share/man/man9/Makefile,
796 src/share/man/man9/kauth.h, src/distrib/sets/lists/comp/mi
797 Notes:
798
799 Branch: fvdl-softdep
800 Description: FFS soft dependencies
801 Status: Terminated; merged to -current
802 Start Date:
803 End Date:
804 Base Tag: fvdl-softdep-base
805 Maintainer: Frank van der Linden <fvdl (a] NetBSD.org>
806 Scope: kernel
807 Notes:
808
809 Branch: gehenna-devsw
810 Description: auto-generation of devsw table
811 Status: Terminated
812 Start Date: 16 May 2002
813 End Date: 6 Sep 2002
814 Base Tag: gehenna-devsw-base
815 Maintainer: MAEKAWA Masahide <gehenna (a] NetBSD.org>
816 Scope: syssrc
817 Notes: The goal is to get rid of the existing device switch tables in
818 port-dependent conf.c and to generate them dynamically by
819 config(8).
820
821 Branch: is-newarp
822 Description: ARP for non-Ethernet
823 Status: Terminated; merged before NetBSD 1.3
824 Start Date: 1996/10/13
825 End Date: 1997/03/15
826 Base Tag: is-newarp-base
827 Maintainer: Ignatios Souvatzis <is (a] NetBSD.org>
828 Scope: kernel
829 Notes:
830
831 Branch: jmcneill-pm
832 Description: Power management framework overhaul, ACPI improvements
833 Status: Terminated; merged before NetBSD 5.0
834 Start Date: 3 Aug 2007
835 End Date: 9 Dec 2007
836 Base Tag: jmcneill-pm-base
837 Maintainer: Jared D. McNeill <jmcneill (a] NetBSD.org>
838 Scope: kernel
839 Notes:
840
841 Branch: kenh-if-detach
842 Description: Interface detach support.
843 Status: ?
844 Start Date:
845 End Date:
846 Base Tag: kenh-if-detach-base
847 Maintainer: Ken Hornstein <kenh (a] NetBSD.org>
848 Scope: kernel
849 Notes:
850
851 Branch: kent-audio1
852 Description: Audio converter pipeline
853 Status: Terminated; merged to -current
854 Start Date: Tue Dec 7 2004
855 End Date: Tue Jan 11 2005
856 Base Tag: kent-audio1-base
857 Maintainer: TAMURA Kent <kent (a] NetBSD.org>
858 Scope: kernel (audio device drivers)
859 Notes: http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html
860 Please consult with the maintainer before committing
861 to this branch.
862
863 Branch: kqueue
864 Description: kqueue kernel event notification mechanism (from FreeBSD)
865 Status: Terminated; merged to -current
866 Start Date: Tue Jul 10 23:08:38 EST 2001
867 End Date: Tue Oct 24 09:14:14 GMT 2002
868 Base Tag: kqueue-base
869 Maintainer: Jaromir Dolecek <jdolecek (a] NetBSD.org>
870 Scope: kernel, libc/sys, share/man/man9, usr.bin/fstat
871 Notes: Integration of FreeBSD's kqueue(2) mechanism, with various
872 local internal changes to better suit NetBSD, and
873 enhancements such as looking up filters by name or
874 number, and dynamic registration of "user" filters.
875 The work is complete as is, but is awaiting more
876 feedback from various kernel gurus before going mainline.
877
878 Branch: ktrace-lwp
879 Description: ktrace support for lwp ids.
880 Status: Terminated; merged to -current
881 Start Date: Wed Jul 2 15:27:30 UTC 2003
882 End Date: Sun Dec 11 12:25:29 UTC 2005
883 Base Tag: ktrace-lwp-base
884 Maintainer: Darren Reed <darrenr (a] NetBSD.org>
885 Scope: sys
886 Notes:
887
888 Branch: marc-pcmcia
889 Description: PCMCIA support
890 Status: Terminated; merged to -current
891 Start Date:
892 End Date:
893 Base Tag: marc-pcmcia-base, marc-pcmcia-bp
894 Maintainer: Marc Horowitz <marc (a] NetBSD.org>
895 Scope: kernel
896 Notes:
897
898 Branch: minoura_x68k_bus_h
899 Description: bus_space(9) and bus_dma(9) implementation for x68k
900 Status: Terminated; merged to -current
901 Start Date: 23 Dec 1998
902 End Date: 16 Mar 1999
903 Base Tag: minoura_x68k_bus_h-base
904 Maintainer: Minoura Makoto <minoura (a] NetBSD.org>
905 Scope: sys/arch/x68k
906 Notes:
907
908 Branch: minoura-xpg4dl
909 Description: Citrus Project locale subsystem
910 Status: Terminated; (partly) merged to -current
911 Start Date: 28 March 2000
912 End Date:
913 Base Tag: minoura-xpg4dl-base
914 Maintainer: Minoura Makoto <minoura (a] NetBSD.org>
915 Scope: basesrc, syssrc, sharesrc
916 Notes: Citrus Project is developing dynamically-loadable, codeset-
917 independent locale subsystem. Part of the implementation
918 (LC_CTYPE) called XPG4DL is now integrated to -current.
919
920 Branch: mjf-devfs
921 Description: device file system supporting dynamic device nodes
922 Status: Terminated
923 Start Date: 12 November 2007
924 End Date: 21 February 2008
925 Base Tag: mjf-devfs-base
926 Maintainer: Matt Fleming <mjf (a] NetBSD.org>
927 Scope: kernel and userland
928 Notes: This branch will move away from the static device nodes that
929 are created with MAKEDEV scripts and allow nodes to be created
930 and removed dynamically as devices are attached and detached
931 from the machine.
932
933 Branch: mrg-vm-swap
934 Description: dynamic swap allocation, swap-to-files support
935 Status: Terminated; abandoned for mrg-vm-swap2
936 Start Date: 12 February 1997
937 End Date: 15 March 1997
938 Base Tag: [none]
939 Maintainer: Matthew R. Green <mrg (a] NetBSD.org>
940 Scope: kernel
941 Notes:
942
943 Branch: mrg-vm-swap2
944 Description: dynamic swap allocation, swap-to-files support
945 Status: Terminated; merged to -current
946 Start Date: 4 May 1997
947 End Date: 12 June 1997
948 Base Tag: mrg-vm-swap2-base
949 Maintainer: Matthew R. Green <mrg (a] NetBSD.org>
950 Scope: kernel
951 Notes:
952
953 Branch: nathanw_sa
954 Description: Scheduler activations
955 Status: Terminated; merged to -current
956 Start Date: 5 March 2001
957 End Date: 18 January 2003
958 Base Tag: nathanw_sa_base
959 Maintainer: Nathan Williams <nathanw (a] NetBSD.org>
960 Scope: kernel, libc, libkvm, libpthread, libpthread_dbg, include,
961 bin/ps usr.bin/systat usr.bin/top usr.bin/w
962 gnu/dist/toolchain/gdb gnu/usr.bin/gdb
963 Notes: The idea of scheduler activations is described in the
964 classic paper by Anderson et al., in ACM Transactions
965 a on Computer Systems volume 10 issue 1 (1992),which
966 can be found at
967 http://www.acm.org/pubs/citations/journals/tocs/1992-10-1/p53-anderson/
968 Many ideas in the implementation are based on the
969 implementation of scheduler activations added to Mach
970 3.0 and described by Davis et al. in the University of
971 Washington CS tech report 92-08-93, which can be found
972 at
973 ftp://ftp.cs.washington.edu/tr/1992/08/UW-CSE-92-08-03.PS.Z
974
975 My USENIX paper on the subject can be found at
976 http://web.mit.edu/nathanw/www/usenix/
977
978 Please consult with the maintainer before committing
979 to this branch.
980 Other tags starting with nathanw_sa reserved for
981 branch management and are not guaranteed to be stable.
982
983 Trunk tagged with "nathanw_sa_before_merge" prior to
984 merging branch down to trunk. Branch tagged with
985 "nathanw_sa_end" to indicate the ending revision of
986 the branch.
987
988 Branch: newlock
989 Description: New locking primitives, based on Solaris's
990 Status: Terminated
991 Start Date: March 9, 2002
992 End Date: February 12, 2007
993 Base Tag: newlock-base
994 Maintainer: Jason R. Thorpe <thorpej (a] NetBSD.org>
995 Scope: Kernel
996 Notes: The goal is to replace the existing lockmgr() and
997 simple_lock() based locking mechanisms with the
998 primitives found in Solaris: mutexes and rwlocks.
999 Superseded by the newlock2 branch.
1000
1001 Branch: newlock2
1002 Description: New locking primitives, based on Solaris's
1003 Status: Terminated
1004 Start Date: September 9, 2006
1005 End Date: February 12, 2007
1006 Base Tag: newlock2-base
1007 Maintainer: Andrew Doran <ad (a] NetBSD.org>
1008 Scope: Kernel
1009 Notes: As per the newlock branch, however given the amount of time
1010 the original branch has lain dormant, a new one has been
1011 created. Goals:
1012 - Implement new locking primitives on most-used ports.
1013 - Minor locking improvements.
1014 - Remove spinlockmgr().
1015
1016 Branch: nick-csl-alignment
1017 Description: Provide correctly aligned __cpu_simple_lock_t for hppa
1018 Status: Terminated
1019 Start Date: 2007-07-18
1020 End Date:
1021 Base Tag: nick-csl-alignment-base5
1022 Maintainer: Nick Hudson <skrll (a] NetBSD.org>
1023 Scope: sys, lib/libpthread, lib/libpthread_dbg
1024 Notes:
1025
1026 Branch: perseant-lfsv2
1027 Description: LFS incompatible on-disk data structure changes
1028 Status: Terminated
1029 Start Date: 27 June 2001
1030 End Date: 16 July 2001
1031 Base Tag: perseant-lfsv2-base
1032 Maintainer: Konrad Schroder <perseant (a] NetBSD.org>
1033 Scope: basesrc/{sbin/*lfs,libexec/lfs_cleanerd,usr.sbin/dumplfs}, syssrc/sys/ufs
1034 Notes: This branch should be short-lived, I expect to merge as soon
1035 as the data structures required for unremove are in and tested.
1036
1037 Branch: ppcoea-renovation
1038 Description: General renovation and cleanup of all OEA PowerPC ports.
1039 Status: Terminated; merged to -current
1040 Start Date: 30 April 2007
1041 End Date: 15 October 2007
1042 Base Tag: ppcoea-renovation-base
1043 Maintainer: Tim Rightnour <garbled (a] netbsd.org>
1044 Scope: src/sys/arch
1045 Notes: This branch is for a general cleanup of all OEA-based PowerPC
1046 ports. OEA (Operating Environment Architecture) PowerPC refers
1047 to the 601, 603, 604, and similar chips. Specifically, not the
1048 403/401 and other embedded chips. The general concept is to get
1049 them all compiling, and sharing as much code as possible. All
1050 developers are welcome to commit to this branch.
1051
1052 Branch: thorpej-devvp
1053 Description: replace dev_t with struct vnode * in devsw entry points
1054 Status: Terminated
1055 Start Date: Sep 6 2001
1056 End Date: ???
1057 Base Tag: thorpej-devvp-base
1058 Maintainer: Jason Thorpe <thorpej (a] NetBSD.org>
1059 Scope: syssrc
1060 Notes: Kernels built from this branch are not expected
1061 to function correctly at this time.
1062
1063 Ports known to compile on this branch:
1064 alpha
1065 i386
1066
1067 Branch: peter-altq
1068 Description: New ALTQ framework:
1069 - sync with KAME sources
1070 - share mtag/name mapping functions
1071 - separate altq + pf attachment
1072 Status: Terminated; merged to -current
1073 Start Date: March 16, 2006
1074 End Date: October 12, 2006
1075 Base Tag: peter-altq-base
1076 Maintainer: Peter Postma <peter (a] NetBSD.org>,
1077 Martin Husemann <martin (a] NetBSD.org>,
1078 Matthias Scheler <tron (a] NetBSD.org>
1079 Scope: dist/pf dist/ipf distrib/sets/lists sys usr.sbin/altq
1080 Notes: Only the first item in the description was finished
1081 in this branch.
1082
1083 Branch: sommerfeld_i386mp_1
1084 Description: Multiprocessor support for i386 using Intel MP BIOS.
1085 Status: Terminated; merged to -current
1086 Start Date: 21 Feb 2000
1087 End Date: 01 Oct 2002
1088 Base Tag: sommerfeld_i386mpbase_1
1089 Maintainer: Bill Sommerfeld <sommerfeld (a] NetBSD.org>
1090 Scope: sys/arch/i386
1091 Notes:
1092 Code committed to the branch has booted to multiuser
1093 on at least one system.
1094
1095 Not guaranteed to compile against mainline since -current
1096 may have changed incompatibly with the last branch update;
1097 use "cvs update -D" to roll-back the rest of the tree to match.
1098
1099 Please get explicit permission from the maintainer
1100 before each commit, or your changes will be backed out.
1101 Other tags starting with sommerfeld_ are private to
1102 the developer and are guaranteed to be unstable.
1103 Only the maintainer should move tags.
1104
1105 Note that this branch uses a DIFFERENT scheme for
1106 syncing with the mainline. the maintainer uses some private
1107 scripts for keeping them in sync; if you make commits
1108 to the branch to "resynchronize" things, you'll
1109 probably do it wrong; instead, ask the maintainer to
1110 resynchronize things.
1111
1112 See sys/arch/i386/TODO on the branch for a list of known
1113 issues with the branch.
1114
1115 Branch: thorpej-mips-cache
1116 Description: overhaul MIPS cache support code
1117 Status: Terminated; merged to -current
1118 Start Date: Oct 23 2001
1119 End Date: Nov 14 2001
1120 Base Tag: thorpej-mips-cache-base
1121 Scope: syssrc
1122 Notes: This branch needs more debugging, testing, and more
1123 ports need to be converted to the new world order.
1124
1125 The following processors have had cache ops
1126 written:
1127
1128 * R2000/R3000 (cache_r3k) -- light testing,
1129 needs to be beat on a lot more to make
1130 sure it's working.
1131
1132 * R4000/R4400 (cache_r4k) -- mhitch (a] NetBSD.org
1133 tracked down a bug, which has been fixed.
1134
1135 Confirmed working on R4000-with-L2.
1136
1137 Confirmed working on R4400-no-L2 and
1138 R4400-with-L2.
1139
1140 * R4600/R5000 (cache_r5k) -- shin (a] NetBSD.org
1141 has committed fixes to this code.
1142
1143 Confirmed working on R4600 v2 (SGI IP-22 with
1144 no SysAD L2 cache).
1145
1146 Confirmed working on RM5260 (Algorithmics P-5064).
1147
1148 * TX39 (cache_tx39) -- uch (a] NetBSD.org has
1149 committed fixes to this code. Awaiting
1150 confirmation that it is working properly.
1151
1152 * R5900 (cache_r5900) -- uch (a] NetBSD.org has
1153 written this code and tested it on a
1154 PlayStation 2.
1155
1156 The following ports have been updated to compile (and
1157 use optimized-for-processor bus_dma routines). Those
1158 that have been tested and work are marked with [WORKING].
1159
1160 * algor [WORKING]
1161
1162 * arc [WORKING]
1163
1164 * pmax [WORKING]
1165
1166 * playstation2 [WORKING]
1167 Needs optimized bus_dmamap_sync().
1168
1169 * hpcmips [need verification that this is working]
1170 Needs optimized bus_dmamap_sync().
1171
1172 * sgimips [WORKING]
1173 Needs optimized bus_dmamap_sync().
1174
1175 * cobalt [need testing]
1176
1177 * mipsco [need testing]
1178
1179 * newsmips [need testing]
1180
1181 Branch: thorpej_scsipi
1182 Description: SCSI/ATAPI midlayer rewrite.
1183 Status: Terminated; merged to -current
1184 Start Date:
1185 End Date: Apr 25 2001
1186 Base Tag: thorpej_scsipi_base, thorpej_scsipi_nbase
1187 Maintainer: Manuel Bouyer <bouyer (a] NetBSD.org>,
1188 Jason Thorpe <thorpej (a] NetBSD.org>
1189 Scope: syssrc
1190 Notes: When a change from -current is pulled up please move the
1191 thorpej_scsipi_base tag to the revision you're syncing with.
1192 thorpej_scsipi_nbase is private to maintainer (only
1193 used when syncing the whole branch with HEAD).
1194 Just before the merge, syssrc has been tagged with
1195 thorpej_scsipi_beforemerge
1196
1197 Branch: thorpej-signal
1198 Description: ?
1199 Status: ?
1200 Start Date:
1201 End Date:
1202 Base Tag: thorpej-signal-base
1203 Maintainer: Jason Thorpe <thorpej (a] NetBSD.org>
1204 Scope: kernel
1205 Notes:
1206
1207 Branch: thorpej-setroot
1208 Description: ?
1209 Status: Terminated; merged to -current
1210 Start Date:
1211 End Date:
1212 Base Tag:
1213 Maintainer: Jason Thorpe <thorpej (a] NetBSD.org>
1214 Scope: kernel
1215 Notes:
1216
1217 Branch: simonb-timecounters
1218 Description: Port FreeBSD timecounters to NetBSD
1219 Status: Terminated
1220 Start Date: Sat Feb 04 2006
1221 End Date: Wed Jun 07 2006
1222 Base Tag: simonb-timecounters-base
1223 Maintainer: Simon Burge <simonb (a] NetBSD.org>,
1224 Frank Kardel <kardel (a] NetBSD.org>
1225 Scope: sys, sbin/savecore, usr.bin/vmstat, usr.sbin/ntp
1226 Notes: early (partial conversion) commit to -current
1227 ok'ed by core@ on 20060605 for testing and further
1228 simplified conversion
1229
1230 Branch: vmlocking
1231 Description: Make VM and file system framework MP safe
1232 Status: Terminated
1233 Start Date: 13 March 2007
1234 End Date: 4 December 2007
1235 Base Tag: vmlocking-base
1236 Maintainer: Andrew Doran <ad (a] NetBSD.org>
1237 Scope: kernel
1238 Notes: Superseded by vmlocking2 branch.
1239
1240 Branch: vmlocking2
1241 Description: Make VM and file system framework MP safe
1242 Status: Terminated
1243 Start Date: 4 December 2007
1244 End Date: 2 January 2008
1245 Base Tag: vmlocking2-base3
1246 Maintainer: Andrew Doran <ad (a] NetBSD.org>
1247 Scope: kernel
1248 Notes: Goals:
1249
1250 - Make VM system / trap handling MP safe.
1251 - Replace simplelocks with mutexes.
1252 - Make file system framework MP safe.
1253
1254 Status by architecture:
1255
1256 alpha done
1257 i386 done
1258 amd64 done
1259 mips done
1260 sparc need pmap/trap locking changes
1261 sparc64 done
1262 arm done
1263 powerpc done
1264 hppa done
1265 sh3 done
1266 m68k done
1267 xen need pmap/trap locking changes
1268
1269 Remaining MI work to do:
1270
1271 - Check aliased vnode handling. There may be problems.
1272
1273 Remaining problems:
1274
1275 - LFS stalls due to v_numoutput leak.
1276
1277 Branch: wrstuden-devbsize
1278 Description: Modify buffer cache to deal with different devices having
1279 different block sizes. Also DEV_BSIZE would go away.
1280 Status: Terminated
1281 Start Date: Aug or Sept 1999
1282 End Date: 1 Apr 2000
1283 Base tag: wrstuden-devbsize-base
1284 Maintainer: Bill Studenmund <wrstuden (a] NetBSD.org>
1285 Scope: kernel
1286 Notes: No longer active due to lack of time, and introduction
1287 of UBC. In terms of UBC, the primary cache for
1288 file data is the VM cache, which needs to operate
1289 in terms of VM pages. As no existing device has native
1290 pages the same size as our VM pages, there already is
1291 a mapping going on between the VM system and the
1292 underlying blocks. So it would be easier and cleaner
1293 to adjust that to deal w/ different block sizes.
1294 Also with UBC, all i/o is in terms of bytes at an offset
1295 with a certain length, so the exact block size isn't a big
1296 deal.
1297
1298 Any other wrstuden-devbsize tag may (and should) go away.
1299
1300 Branch: yamt-idlelwp
1301 Description: idle lwp, and some changes depending on it.
1302
1303 1. separate context switching and thread scheduling.
1304 (cf. gmcgarry_ctxsw)
1305 2. implement idle lwp.
1306 3. clean up related MD/MI interfaces.
1307 4. make scheduler(s) modular.
1308
1309 Status: Terminated; merged to -current
1310 Start Date: Fri Feb 17 2007
1311 End Date: Thu May 17 2007
1312 Base Tag: yamt-idlelwp-base8
1313 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org>
1314 Scope: src/sys (src/common is tagged but not branched)
1315 Notes:
1316 Status of ports:
1317 alpha [ Done, UP tested, MP not tested ]
1318 i386 [ Done, tested ]
1319 amd64 [ Done, tested ]
1320 mips [ Done, both MIPS1 and MIPS3 tested]
1321 sparc [ Done, UP tested, MP might have
1322 some problem after newlock2 merge ]
1323 sparc64 [ Done, tested ]
1324 arm [ Done, SA1 tested. See PR 36548 ]
1325 macppc/powerpc [ Done, OEA tested ]
1326 hppa [ Done, tested ]
1327 sh3 [ Done, tested ]
1328 vax [ Done, UP tested, MP untested ]
1329 m68k [ Done, tested on several ports ]
1330 ns32k [ broken ]
1331 ia64 [ broken ]
1332 pdp10 [ broken ]
1333
1334 How to adapt a port?
1335
1336 - unify cpu_switch, cpu_exit, cpu_switchto into
1337 a single cpu_switchto. see cpu_switchto.9.
1338
1339 - implement cpu_idle. see cpu_idle.9.
1340
1341 - add a flag argument to cpu_need_resched.
1342 handle RESCHED_IMMED flag, which means "cause a preemption
1343 as soon as possible." eg. in the case of MULTIPROCESSOR,
1344 send an IPI to the target cpu.
1345
1346 - "curlwp == NULL" is not a valid check for idle state anymore.
1347 use "(curlwp->l_flag & LW_IDLE) != 0" instead. curlwp is
1348 almost always non-NULL, with exceptions like early on boot.
1349
1350 - remove idle pcbs.
1351
1352 - (if MULTIPROCESSOR) tweak processor trampoline code.
1353
1354 - (if MULTIPROCESSOR) call mi_cpu_attach when attaching
1355 secondary processors.
1356
1357 - (if schedhz!=0) call schedclock regardless of the value of
1358 curlwp.
1359
1360 - of course, update MD users of scheduler/switching API.
1361
1362 Branch: yamt-lazymbuf
1363 Description: change the way to share mbuf external storage so that
1364 it can work without kernel_lock.
1365 Status: Terminated; merged to -current
1366 Start Date: Wed Jul 6 2005
1367 End Date: Mon Mar 24 2008
1368 Base Tag: yamt-lazymbuf-base14
1369 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org>
1370 Scope: src/sys (src/common is tagged but not branched)
1371 Notes:
1372
1373 Branch: yamt-km, yamt-km-doc
1374 Description: simplify/improve kernel memory management and bootstrap
1375 Status: Terminated; merged to -current
1376 Start Date: Tue Jan 25 2005
1377 End Date: Fri Apr 1 2005
1378 Base Tag: yamt-km-base{,2,3,4}, yamt-km-doc-base
1379 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org>
1380 Scope: yamt-km: src/sys
1381 yamt-km-doc: src/share/man/man9/uvm.9
1382 Notes: http://mail-index.NetBSD.org/tech-kern/2004/12/25/0005.html
1383
1384 the followings are per-port status.
1385 (account names mean "tested by".)
1386
1387 works enough to go to multiuser:
1388 alpha, i386, xen (yamt@)
1389 pc532 (simonb@)
1390 alpha, i386, mac68k, macppc, pmax, shark,
1391 sparc, sparc64, sun3, x68k (chs@)
1392 cobalt, dreamcast, hp300, news68k, newsmips,
1393 sun3x (tsutsui@)
1394 amiga (mhitch@)
1395 cats, hp700 (skrll@)
1396 xen (bouyer@)
1397
1398 known to have the same problem as trunk:
1399 vax (chs@, stuck while running kvm_mkdb)
1400
1401 known to have a problem:
1402 luna68k (and, if any, other m68k ports which use TTR)
1403 needs to be revisited.
1404 -> for luna68k, although not tested,
1405 Sysmap has been moved to avoid kva conflict with
1406 I/O ranges.
1407
1408 buildable:
1409 src/sys/arch/acorn26/conf/GENERIC
1410 src/sys/arch/acorn32/conf/GENERIC
1411 src/sys/arch/algor/conf/P6032
1412 src/sys/arch/alpha/conf/GENERIC
1413 src/sys/arch/alpha/conf/GENERIC.MP
1414 src/sys/arch/amd64/conf/GENERIC
1415 src/sys/arch/amd64/conf/GENERIC.MP
1416 src/sys/arch/amiga/conf/GENERIC
1417 src/sys/arch/arc/conf/GENERIC
1418 src/sys/arch/atari/conf/MILAN-PCIIDE
1419 src/sys/arch/bebox/conf/GENERIC
1420 src/sys/arch/cats/conf/GENERIC
1421 src/sys/arch/cesfic/conf/GENERIC
1422 src/sys/arch/cobalt/conf/GENERIC
1423 src/sys/arch/dreamcast/conf/GENERIC
1424 src/sys/arch/evbarm/conf/TS7200
1425 src/sys/arch/evbppc/conf/WALNUT
1426 src/sys/arch/evbsh3/conf/COMPUTEXEVB
1427 src/sys/arch/evbsh5/conf/CAYMAN64
1428 src/sys/arch/hp300/conf/GENERIC
1429 src/sys/arch/hp700/conf/GENERIC
1430 src/sys/arch/hpcarm/conf/JORNADA728
1431 src/sys/arch/hpcmips/conf/GENERIC
1432 src/sys/arch/hpcsh/conf/GENERIC
1433 src/sys/arch/hpcsh/conf/HPW650PA
1434 src/sys/arch/i386/conf/GENERIC
1435 src/sys/arch/i386/conf/GENERIC.MP
1436 src/sys/arch/i386/conf/XEN0
1437 src/sys/arch/i386/conf/XENU
1438 src/sys/arch/ibmnws/conf/GENERIC
1439 src/sys/arch/iyonix/conf/GENERIC
1440 src/sys/arch/luna68k/conf/GENERIC
1441 src/sys/arch/mac68k/conf/GENERIC
1442 src/sys/arch/macppc/conf/GENERIC
1443 src/sys/arch/macppc/conf/GENERIC.MP
1444 src/sys/arch/mipsco/conf/GENERIC
1445 src/sys/arch/mmeye/conf/GENERIC
1446 src/sys/arch/mvme68k/conf/GENERIC
1447 src/sys/arch/netwinder/conf/GENERIC
1448 src/sys/arch/news68k/conf/GENERIC
1449 src/sys/arch/newsmips/conf/GENERIC
1450 src/sys/arch/next68k/conf/GENERIC
1451 src/sys/arch/ofppc/conf/GENERIC
1452 src/sys/arch/pc532/conf/GENERIC
1453 src/sys/arch/pmax/conf/GENERIC
1454 src/sys/arch/prep/conf/GENERIC
1455 src/sys/arch/sandpoint/conf/GENERIC
1456 src/sys/arch/sbmips/conf/GENERIC
1457 src/sys/arch/sgimips/conf/GENERIC32_IP3x
1458 src/sys/arch/shark/conf/GENERIC
1459 src/sys/arch/sparc/conf/GENERIC
1460 src/sys/arch/sparc/conf/GENERIC.MP
1461 src/sys/arch/sparc64/conf/GENERIC
1462 src/sys/arch/sparc64/conf/GENERIC.MP
1463 src/sys/arch/sun2/conf/GENERIC
1464 src/sys/arch/sun3/conf/GENERIC
1465 src/sys/arch/vax/conf/GENERIC
1466 src/sys/arch/vax/conf/GENERIC.MP
1467 src/sys/arch/x68k/conf/GENERIC
1468
1469 src/sys/arch/playstation2/conf/GENERIC
1470
1471 Branch: yamt-pdpolicy
1472 Description: play with page replacement policy
1473 - separate page replacement policy from the rest of kernel
1474 - implement alternative replacement policy
1475 - related read-ahead adjustment?
1476 Status: Terminated; merged to -current
1477 Start Date: Sun Mar 5 2006
1478 End Date: Sat Sep 16 2006
1479 Base Tag: yamt-pdpolicy-base9
1480 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org>
1481 Scope: src/sys (src/common is tagged but not branched)
1482 Notes:
1483
1484 Branch: yamt-readahead
1485 Description: play with file readahead
1486 Status: Terminated; merged to -current
1487 Start Date: Mon Nov 14 2005
1488 End Date: Wed Nov 30 2005
1489 Base Tag: yamt-readahead-base3
1490 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org>
1491 Scope: src/sys
1492 Notes:
1493
1494 Branch: yamt-uio_vmspace
1495 Description: uio_lwp/uio_segflg -> uio_vmspace
1496 Status: Terminated; merged to -current
1497 Start Date: Mon Dec 31 2005
1498 End Date: Wed Mar 1 2006
1499 Base Tag: yamt-uio_vmspace-base5
1500 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org>
1501 Scope: src/sys
1502 Notes:
1503
1504 Branch: yamt-splraiseipl
1505 Description: finish implementing splraiseipl (and makeiplcookie).
1506 http://mail-index.NetBSD.org/tech-kern/2006/07/01/0000.html
1507
1508 - completes workqueue(9) and netbt.
1509 - fix PR/33218.
1510
1511 Status: Terminated; merged to -current
1512 Start Date: Mon Sep 18 2006
1513 End Date: Fri Dec 22 2006
1514 Base Tag: yamt-splraiseipl-base5
1515 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org>
1516 Scope: src/sys (src/common is tagged but not branched)
1517 Notes:
1518 tested (by who):
1519 alpha (yamt)
1520 alpha (pavel)
1521 amd64 (reported privately)
1522 cobalt (tsutsui)
1523 ews4800mips (tsutsui)
1524 hp300 (tsutsui)
1525 hpcarm (reported privately)
1526 i386 (yamt)
1527 macppc (tsutsui)
1528 news68k (tsutsui)
1529 sgimips(IP32) (tsutsui)
1530 sparc(sun4c) (tsutsui)
1531 sun2 (tsutsui)
1532 sun3 (tsutsui)
1533 sun3x (tsutsui)
1534 xen (yamt)
1535
1536 compile-tested:
1537 acorn26
1538 acorn32
1539 algor
1540 amiga
1541 arc
1542 atari
1543 bebox
1544 cats
1545 cesfic
1546 dreamcast
1547 evbarm
1548 evbmips
1549 evbppc(marvell)
1550 evbppc(ibm4xx)
1551 evbsh3
1552 hp700
1553 hpcmips
1554 hpcsh
1555 ia64
1556 ibmnws
1557 iyonix
1558 landisk
1559 luna68k
1560 mac68k
1561 mmeye
1562 mvme68k
1563 mvmeppc
1564 mipsco
1565 netwinder
1566 newsmips
1567 next68k
1568 ofppc
1569 pc532
1570 pmax
1571 pmppc
1572 prep
1573 sandpoint
1574 sbmips
1575 shark
1576 sparc
1577 sparc64
1578 vax
1579 x68k
1580 zaurus
1581
1582 not tested:
1583 pdp10 (i don't know how to build)
1584 sh5 (not buildable with an unrelated problem.)
1585
1586 compile CAYMAN64/netbsd32_sa.o
1587 cc1: warnings being treated as errors
1588 /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c: In function 'netbsd32_sa_ucsp':
1589 /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c:126: warning: implicit declaration of function '_UC_MACHINE32_SP'
1590 --- netbsd32_sa.o ---
1591 *** [netbsd32_sa.o] Error code 1
1592 1 error
1593
1594 notyet:
1595 amigappc
1596 playstation2
1597
1598 Branch: yamt-vop
1599 Description: remove several VOPs
1600 Status: Terminated; merged to -current
1601 Start Date: Wed Oct 19 2005
1602 End Date: Wed Nov 2 2005
1603 Base Tag: yamt-vop-base3
1604 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org>
1605 Scope: src/sys
1606 Notes: http://mail-index.NetBSD.org/tech-kern/2005/09/27/0000.html
1607
1608 Branch: yamt-x86pmap
1609 Description: merge i386 and amd64 pmap
1610 Status: Terminated; merged to -current
1611 Start Date: Mon Sep 24 2007
1612 End Date: Fri Oct 19 2007
1613 Base Tag: yamt-x86pmap-base4
1614 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org>
1615 Scope: src/sys (src/common is tagged but not branched)
1616 Notes:
1617
1618 Branch: gdamore-uart
1619 Description: Add register table support to com driver.
1620 Status: Active
1621 Start Date: 14 June 2006
1622 End Date: 13 July 2006
1623 Base Tag: gdamore-uart-base
1624 Maintainer: Garrett D'Amore <gdamore (a] NetBSD.org>
1625 Scope: kernel
1626 Notes: Results in consolidation of Alchemy (mips/dev/alchemy/aucom.c)
1627 com support, and also removes a nasty hack from Atheros com.
1628
1629 ########################################################################
1630 # Other:
1631 ########################################################################
1632
1633 Branch: magnum
1634 Description: ?
1635 Status: ?
1636 Start Date:
1637 End Date:
1638 Base Tag: magnum-base
1639 Maintainer: ?
1640 Scope: kernel
1641 Notes:
1642
1643