Home | History | Annotate | Line # | Download | only in doc
BRANCHES revision 1.200
      1 #	$NetBSD: BRANCHES,v 1.200 2007/08/03 22:20:48 jmcneill 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 Febuary 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 initializtion, 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:		gmcgarry_ctxsw
    258 Description:	Separate scheduler from context-switch code
    259 Status:		Dormant
    260 Start Date:	18 December 2002
    261 End Date:
    262 Base Tag:	gmcgarry_ctxsw_base
    263 Maintainer:	Gregory McGarry <gmcgarry (a] NetBSD.org>
    264 Scope:		kernel
    265 Notes:		Removing knowledge of the schedular and its run queues
    266 		from the machine-dependent context switch code is the
    267 		first step in cleaning up the scheduler.  It is necessary
    268 		for the newlock branch, making the scheduler SMP friendly,
    269 		adding real-time scheduler extensions, and reducing the
    270 		number of code paths for LWP and proc switching.
    271 
    272 Branch:		gmcgarry_ucred
    273 Description:	Integrate and encapsulate user credentials
    274 Status:		Dormant
    275 Start Date:	18 December 2002
    276 End Date:
    277 Base Tag:	gmcgarry_ucred_base
    278 Maintainer:	Gregory McGarry <gmcgarry (a] NetBSD.org>
    279 Scope:		kernel
    280 Notes:		merge pcred and ucred and poolify
    281 
    282 Branch:		hpcarm-cleanup
    283 Description:	Fix build problems for hpcarm
    284 Status:		Active
    285 Start Date:	31 July 2007
    286 End Date:
    287 Base Tag:	hpcarm-cleanup-base
    288 Maintainer:	Robert Swindells <rjs (a] NetBSD.org>
    289 Scope:		kernel
    290 Notes:		Modify SA11x0 interrupt code to match PXA2x0 equivalent.
    291 
    292 Branch:		itohy-usb1
    293 Description:	USB stack overhaul, mostly DMA related
    294 Status:		Active
    295 Start Date:	22 May 2007
    296 End Date:
    297 Base Tag:	itohy-usb1-base
    298 Maintainer:	ITOH Yasufumi <itohy (a] NetBSD.org>
    299 Scope:		kernel
    300 Notes:		To check out the kernel source tree,
    301 		1. check out checkout script
    302 			cvs checkout -ritohy-usb1 src/sys/dev/usb/filelist
    303 		2. update files in the branch
    304 			sh -e src/sys/dev/usb/filelist
    305 
    306 Branch:		jmcneill-pm
    307 Description:	Power management framework overhaul, ACPI improvements
    308 Status:		Active
    309 Start Date:	3 Aug 2007
    310 End Date:	
    311 Base Tag:	jmcneill-pm-base
    312 Scope:		kernel
    313 Notes:		
    314 
    315 Branch:		kame
    316 Description:	KAME Project
    317 Status:		Dormant
    318 Start Date:	28 Jun 1999
    319 End Date:
    320 Base Tag:
    321 Maintainer:	Jun-ichiro itojun Hagino <itojun (a] NetBSD.org>
    322 Scope:		kernel
    323 Notes:		http://www.kame.net
    324 		Used for "reference" purposes for early part of KAME
    325 		integration effort.  The branch is not actively used, as I
    326 		(itojun) use patch(1) and diff(1) for the KAME syncs.
    327 
    328 Branch:		kent-audio2
    329 Description:	In-kernel audio mixer
    330 Status:		Active
    331 Start Date:	Sun Jan 16 2005
    332 End Date:	
    333 Base Tag:	kent-audio2-base
    334 Maintainer:	TAMURA Kent <kent (a] NetBSD.org>
    335 Scope:		kernel (audio device drivers)
    336 Notes:		http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html
    337 		Please consult with the maintainer before committing
    338 		to this branch.
    339 		This branch is not expected to be compilable yet.
    340 
    341 Branch:		matt-timespec
    342 Description:	Convert the kernel to struct timespec as its primary time
    343 		storage mechanism.
    344 Status:		Inactive
    345 Start Date:	2005-02-19
    346 End Date:
    347 Base Tag:	
    348 Maintainer:	Matt Thomas <matt (a] NetBSD.org>
    349 Scope:		kernel
    350 Notes:	
    351 
    352 Branch:		matt-mips64
    353 Description:	Rototill the mips code to support LP64 mips and N32/N64 ABIs
    354 Status:		Active
    355 Start Date:	2007-07-17
    356 End Date:
    357 Base Tag:	
    358 Maintainer:	Matt Thomas <matt (a] NetBSD.org>
    359 Scope:		kernel & userland
    360 Notes:	
    361 
    362 Branch:		newlock
    363 Description:	New locking primitives, based on Solaris's
    364 Status:		Terminated
    365 Start Date:	March 9, 2002
    366 End Date:	Febuary 12, 2007
    367 Base Tag:	newlock-base
    368 Maintainer:	Jason R. Thorpe <thorpej (a] NetBSD.org>
    369 Scope:		Kernel
    370 Notes:		The goal is to replace the existing lockmgr() and
    371 		simple_lock() based locking mechanisms with the
    372 		primitives found in Solaris: mutexes and rwlocks.
    373 		Superseeded by the newlock2 branch.
    374 
    375 Branch:		newlock2
    376 Description:	New locking primitives, based on Solaris's
    377 Status:		Terminated
    378 Start Date:	September 9, 2006
    379 End Date:	Febuary 12, 2007
    380 Base Tag:	newlock2-base
    381 Maintainer:	Andrew Doran <ad (a] NetBSD.org>
    382 Scope:		Kernel
    383 Notes:		As per the newlock branch, however given the amount of time
    384 		the original branch has lain dormant, a new one has been
    385 		created.  Goals:
    386 		- Implement new locking primitives on most-used ports.
    387 		- Minor locking improvements.
    388 		- Remove spinlockmgr().
    389 
    390 Branch:		nick-csl-alignment
    391 Description:	Provide correctly aligned __cpu_simple_lock_t for hppa
    392 Status:		Active
    393 Start Date:	2007-07-18
    394 End Date:
    395 Base Tag:	nick-csl-alignment-base
    396 Maintainer:	Nick Hudson <skrll (a] NetBSD.org>
    397 Scope:		sys and lib/libpthread
    398 Notes:	
    399 
    400 Branch:	  	pkgviews
    401 Description:  	package views, enabling multiple conflicting packages to co-exist
    402 Status:		Active
    403 Start Date:	22 July 2002
    404 End Date:
    405 Base Tag:	pkgviews
    406 Maintainer:	Alistair Crooks <agc (a] NetBSD.org>
    407 Scope:		pkgsrc, basesrc/usr.sbin/pkg_install
    408 Notes:		A more flexible infrastructure for third-party packages by
    409 		allowing multiple conflicting packages and versions to co-exist
    410 		within the same tree
    411 
    412 Branch:		ppcoea-renovation
    413 Description:	General renovation and cleanup of all OEA PowerPC ports.
    414 Status:		Active
    415 Start Date:	30 April 2007
    416 End Date:
    417 Base Tag:	ppcoea-renovation-base
    418 Maintainer:	Tim Rightnour <garbled (a] netbsd.org>
    419 Scope:		src/sys/arch
    420 Notes:		This branch is for a general cleanup of all OEA-based PowerPC
    421 		ports. OEA (Operating Environment Architecture) PowerPC refers
    422 		to the 601, 603, 604, and similar chips.  Specifically, not the
    423 		403/401 and other embedded chips. The general concept is to get
    424 		them all compiling, and sharing as much code as possible.  All
    425 		developers are welcome to commit to this branch.
    426 
    427 Branch:		rpaulo-netinet-merge-pcb
    428 Description:	merge in6pcb with inpcb
    429 Status:		Dormant
    430 Start Date:	Wed Feb 01 2006
    431 End Date:	
    432 Base Tag:	rpaulo-netinet-merge-pcb-base
    433 Maintainer:	Rui Paulo <rpaulo (a] NetBSD.org>
    434 Scope:		src/sys
    435 Notes:		No longer active due to the lack of time. If you plan to
    436 		continue this branch, sys/netinet/in_pcb.h already contains
    437 		the proposed structure layout (which was roughly discussed
    438 		in the tech-net mailing list).
    439 		I also defined INP_*() macros to mimicate FreeBSD's inpcb
    440 		locking style, but currently they do nothing and are not
    441 		yet called at the correct places (needs discussion about
    442 		kernel fine-grained locking).
    443 		To continue this branch, one needs to read all the relevant
    444 		inpcb/in6pcb source files and change the function names,
    445 		structure names, structure fileds according to the new
    446 		layout (in6pcb is gone).
    447 		Don't try to build a kernel from this branch because it won't
    448 		work. The missing pieces required to do a complete build
    449 		were not committed because they were incomplete and generated
    450 		panics.
    451 		You shouldn't need to worry about KAME syncs because
    452 		they did most of them by now.
    453 		After the work is done, you are required to test the branch
    454 		(before the merge to -current) with an interop IPv6 test.
    455 		More info at: http://www.tahi.org/
    456 
    457 Branch:		rtr-xorg-branch
    458 Description:	xorg & static build alterations to src/x11
    459 Status:		Active
    460 Start Date:	Nov 15 2004
    461 End Date:	
    462 Base tag:	rtr-xorg-branch-base
    463 Maintainer:	Tyler R. Retzlaff <rtr (a] NetBSD.org>
    464 Scope:		x11
    465 		distrib/sets/lists
    466 		share/mk/bsd.x11.mk
    467 		share/mk/bsd.own.mk
    468 		etc/mtree/NetBSD.dist
    469 Notes:		Requires parts of xsrc/xfree (HEAD)
    470 		xsrc/local, xsrc/xfree/xc/programs/Xserver/hw/netbsd
    471 		Requires xorg (XORG-6_8_1)
    472 
    473 Branch:  	wrstuden-fixsa
    474 Description:	Fix a number of issues present with Scheduler Activations.
    475 Status: 	Active
    476 Start Date:	15 May 2007
    477 End Date:
    478 Base Tag:	wrstuden-fixsa-base
    479 Maintainer:	Bill Stouder-Studenmund <wrstuden (a] NetBSD.org>
    480 Scope:		src, though all the interesting stuff is in the kernel
    481 		or lib/libpthread or maybe gdb.
    482 Notes:		This branch is based off of the netbsd-4 branch!
    483 		This branch is intended to stage improvements for the
    484 		Scheduler Activations system for NetBSD 4. Improvements
    485 		include not allocating memory while preparing to tsleep(),
    486 		reducing inappropriate upcall delivery (hopefully also
    487 		eliminating the need to mlock stacks), and being
    488 		able to pthread_kill() running threads.
    489 
    490 Branch:		vmlocking
    491 Description:	Make memory allocators and trap handling MP safe
    492 Status:		Active
    493 Start Date:	13 March 2007
    494 End Date:
    495 Base Tag:	vmlocking-base
    496 Maintainer:	Andrew Doran <ad (a] NetBSD.org>
    497 Scope:		kernel
    498 Notes:
    499 		- Replace all simplelocks with mutexes
    500 		- Remove spinlockmgr
    501 		- Make memory allocators MP safe
    502 		- Make trap handling MP safe: push kernel lock acquire
    503 		  back into pager ops.
    504 
    505 		Only i386 is currently update.  Most per architecture
    506 		changes need to be made in the pmap module.  LFS is not
    507 		currently stable due interaction between the pagedaemon (?)
    508 		and the HOLDRELE() in lfs_segment.c.  It may trash your
    509 		filesystem..
    510 
    511 		Most of the locks replaced are now sleep/adaptive locks or
    512 		spin locks at IPL_VM.  Assuming audio interrupt handlers
    513 		are made MP safe there are far fewer potential deadlocks
    514 		against the kernel lock.
    515 
    516 		v_interlock becomes an adaptive mutex so now acquring
    517 		it can potentially block, similarly for other locks
    518 		that were before simplelocks.  This needs to be audited
    519 		carefully.
    520 
    521 		Use vnodes in general needs to be audited, as vnodes can
    522 		now be inspected without the kernel lock held.
    523 
    524 		Acquiring locks in the pmap module can now block, meaning
    525 		that the current pmap, cpu or lazy pmap status can change
    526 		out from underneath the requestor.  This also needs to be
    527 		audited.
    528 
    529 		Currently, i386 has the necessary modifications, and has
    530 		trap handling and a few calls to allocators out from under
    531 		the kernel lock.  There are still problems that need to be
    532 		debugged.
    533 
    534 		Need to check that whenever a lock is initialized, it is
    535 		also destroyed.
    536 
    537 		Lots of testing required.
    538 
    539 Branch:		yamt-lazymbuf
    540 Description:	implement and evaluate lazy mapping of mbuf external data pages
    541 		also, change the way to share mbuf external storage.
    542 		it's intended as the first step of larger changes.
    543 			1. support operations (esp. bus_dma load) on
    544 			   unmapped mbuf.
    545 			2. unify mbuf and buf.
    546 			   (or, at least some parts of them)
    547 			3. then it should be trivial to implement
    548 			   i/o coalescing, etc.
    549 Status:		Active
    550 Start Date:	Wed Jul  6 2005
    551 End Date:	
    552 Base Tag:	yamt-lazymbuf-base4
    553 Maintainer:	YAMAMOTO Takashi <yamt (a] NetBSD.org>
    554 Scope:		src/sys  (src/common is tagged but not branched)
    555 Notes:		
    556 		i386		DONE
    557 		amd64		DONE
    558 		other ports should work as the trunk does.
    559 		(conditionalized by __HAVE_LAZY_MBUF macro)
    560 
    561 Branch:		reinoud-bufcleanup
    562 Description:	implement and evaluate struct buf usage cleanup strategies.
    563 		Ideas currently in mind (preference for b):
    564 		a)
    565 			1. use of bio_ops per buffer.
    566 			2. allow chaining/overloading of functions in bio_ops
    567 			   and provide some private context.
    568 			3. extend the bio_ops with commenly used functionality
    569 			   like pending action counting, custom context passing,
    570 			   last minute processing of buffer data, buffer cache
    571 			   etc.
    572 			4. investigate the use of the kcont()
    573 			   continuation-passing framework for async io
    574 			   completion notification for bufs
    575 			...
    576 		b)
    577 			1. all sequencing use of B_CALL replaced by
    578 			   device-threads, if possible generic code around BUFQ
    579 			2. possibly use kcont() for async IO finished signalling
    580 			3. counter of pending and queued actions requestable
    581 			   by IOCTL interface?
    582 			4. implement `last minute buffer fixup' calls and maybe
    583 			   even finished I/O calls as vnode operations
    584 			...
    585 Status:		Active
    586 Start Date:	Thu Mar 15 2007
    587 End Date:
    588 Base Tag:	reinoud-bufcleanup-base
    589 Maintainer:	Reinoud Zandijk <reinoud (a] NetBSD.org>
    590 Scope:		src/sys and src/common
    591 Notes:		Used as expiriment sandbox and if successful hopefully one day
    592 		to be intergrated.
    593 
    594 Branch:		thorpej-atomic
    595 Description:	Implementation of an atomic memory operations API modeled
    596 		after the one in Solaris 10.
    597 Status:		Active
    598 Start Date:	Apr 11 2007
    599 End Date:
    600 Base tag:	thorpej-atomic-base
    601 Maintainer:	Jason Thorpe <thorpej (a] netbsd.org>
    602 Scope:		src/common
    603 		src/sys
    604 Notes:		Base atomic primitives need to be implemented for
    605 		all of the supported architectures:
    606 
    607 		alpha		DONE
    608 		arm		DONE
    609 		hppa
    610 		i386		DONE
    611 		ia64
    612 		m68k		DONE (except for 68010)
    613 		mips
    614 		ns32k
    615 		powerpc		DONE except for membar_*()
    616 		powerpc64	DONE except for membar_*()
    617 		sh3
    618 		sparc		DONE except for membar_*()
    619 		sparc64		DONE except for membar_*()
    620 		vax
    621 		x86_64		DONE
    622 
    623 		Tested:
    624 
    625 		alpha		NO
    626 		arm		NO
    627 		hppa		NO
    628 		i386		NO
    629 		ia64		NO
    630 		m68k		NO
    631 		mips		NO
    632 		ns32k		NO
    633 		powerpc		NO
    634 		powerpc64	NO
    635 		sh3		NO
    636 		sparc		NO
    637 		sparc64		NO
    638 		vax		NO
    639 		x86_64		NO
    640 
    641 		TODO:
    642 
    643 		all		- Need to replace mb_*() with membar_*().
    644 
    645 				- Audit MUTEX_CAS() and RWLOCK_CAS() uses
    646 				  to see of membar_enter() is required here.
    647 
    648 				- Talk to ad@ -- figure out of non-atomic
    649 				  mutex / rwlock release is actually safe.
    650 
    651 		arm		- Consider using a RAS technique like
    652 				  MIPS uses for _lock_cas() and the mutex
    653 				  stubs.  Possibly do more than one atomic
    654 				  op as a RAS.  Possibly implement mutex
    655 				  stubs using the technique.
    656 
    657 		m68k		- Need to do 68010 support.
    658 		
    659 		i386		- Need to change when x86_patch() is called
    660 				  so we can test ncpus.
    661 
    662 		powerpc		- Figure out if we need barriers in the
    663 				  atomic ops themselves (hopefully not!)
    664 
    665 		x86_64		- Need to change when x86_patch() is called
    666 				  so we can test ncpus.
    667 
    668 ########################################################################
    669 # Individual developers' branches (Terminated):
    670 ########################################################################
    671 
    672 Branch:		bouyer-scsipi
    673 Description:	Integration of atapi support
    674 Status:		Terminated
    675 Start Date:
    676 End Date:
    677 Base Tag:
    678 Maintainer:	Manuel Bouyer <bouyer (a] NetBSD.org>
    679 Scope:		kernel
    680 Notes:		Superseded by thorpej_scsipi
    681 
    682 Branch:		bouyer-xen2
    683 Description:	update xen port to xen 2.0, with support for domain0 operations
    684 Status:		Terminated
    685 Start Date:	Dec 13 2004
    686 End Date:	Mar 10 2005
    687 Base Tag:	netbsd-2-base
    688 Maintainer:	Manuel Bouyer <bouyer (a] NetBSD.org>
    689 Scope:		src/sys/arch/xen
    690 Notes:
    691 
    692 Branch: 	chap-midi
    693 Description:	Renovation of MIDI support
    694 Status: 	Terminated; merged to -current
    695 Start Date:	19 May 2006
    696 End Date:	30 Jun 2006
    697 Base Tag:	chap-midi-base
    698 Maintainer:	Chapman Flack <chap (a] NetBSD.org>
    699 Scope:		sys, share/man, usr.bin
    700 Notes:
    701 
    702 Branch:		chs-ubc
    703 Description:	Unified Buffer Cache
    704 Status:		Terminated
    705 Start Date:
    706 End Date:
    707 Base Tag:	chs-ubc-base
    708 Maintainer:	Chuck Silvers <chs (a] NetBSD.org>
    709 Scope:		kernel
    710 Notes:
    711 
    712 Branch:		chs-ubc2
    713 Description:	 Unified Buffer Cache
    714 Status:		Terminated; merged to -current
    715 Start Date:
    716 End Date:
    717 Base Tag:	chs-ubc2-base, chs-ubc2-newbase
    718 Maintainer:	Chuck Silvers <chs (a] NetBSD.org>
    719 Scope:		kernel
    720 Notes:
    721 
    722 Branch:		cjs-build-against-obj-dir
    723 Description:	?
    724 Status:		?
    725 Start Date:
    726 End Date:
    727 Base Tag:
    728 Maintainer:	Curt Sampson <cjs (a] NetBSD.org>
    729 Scope:		Entire tree.
    730 Notes:
    731 
    732 Branch:		eeh-paddr_t
    733 Description:	use separate types for virtual vs. physical addresses
    734 Status:		Terminated; merged to -current
    735 Start Date:
    736 End Date:
    737 Base Tag:	eeh-paddr_t-base
    738 Maintainer:	Eduardo Horvath <eeh (a] NetBSD.org>
    739 Scope:		kernel
    740 Notes:		This is needed to support 32-bit kernels on sparc64.
    741 
    742 Branch:		elad-kernelauth
    743 Description:	Native NetBSD implementation of Apple's kernel authorization
    744 		based on TN2127. This is a "clean-room" implementation to
    745 		avoid any licensing issues.
    746 Status:		Terminated; merged to -current
    747 Start Date:	Tue Mar	 7 2006
    748 End Date:	Mon May 15 2006
    749 Base Tag:	elad-kernelauth-base
    750 Maintainer:	Elad Efrat <elad (a] NetBSD.org>
    751 Scope:		src/sys, src/share/man/man9/Makefile,
    752 		src/share/man/man9/kauth.h, src/distrib/sets/lists/comp/mi
    753 Notes:
    754 
    755 Branch:		fvdl-softdep
    756 Description:	FFS soft dependencies
    757 Status:		Terminated; merged to -current
    758 Start Date:
    759 End Date:
    760 Base Tag:	fvdl-softdep-base
    761 Maintainer:	Frank van der Linden <fvdl (a] NetBSD.org>
    762 Scope:		kernel
    763 Notes:
    764 
    765 Branch:		gehenna-devsw
    766 Description:	auto-generation of devsw table
    767 Status:		Terminated
    768 Start Date:	16 May 2002
    769 End Date:	6 Sep 2002
    770 Base Tag:	gehenna-devsw-base
    771 Maintainer:	MAEKAWA Masahide <gehenna (a] NetBSD.org>
    772 Scope:		syssrc
    773 Notes:		The goal is to get rid of the existing device switch tables in
    774 		port-dependent conf.c and to generate them dynamically by
    775 		config(8).
    776 
    777 Branch:		is-newarp
    778 Description:	ARP for non-Ethernet
    779 Status:		Terminated; merged before NetBSD 1.3
    780 Start Date:	1996/10/13
    781 End Date:	1997/03/15
    782 Base Tag:	is-newarp-base
    783 Maintainer:	Ignatios Souvatzis <is (a] NetBSD.org>
    784 Scope:		kernel
    785 Notes:
    786 
    787 Branch:		kenh-if-detach
    788 Description:	Interface detach support.
    789 Status:		?
    790 Start Date:
    791 End Date:
    792 Base Tag:	kenh-if-detach-base
    793 Maintainer:	Ken Hornstein <kenh (a] NetBSD.org>
    794 Scope:		kernel
    795 Notes:
    796 
    797 Branch:		kent-audio1
    798 Description:	Audio converter pipeline
    799 Status:		Terminated; merged to -current
    800 Start Date:	Tue Dec  7 2004
    801 End Date:	Tue Jan 11 2005
    802 Base Tag:	kent-audio1-base
    803 Maintainer:	TAMURA Kent <kent (a] NetBSD.org>
    804 Scope:		kernel (audio device drivers)
    805 Notes:		http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html
    806 		Please consult with the maintainer before committing
    807 		to this branch.
    808 
    809 Branch:		kqueue
    810 Description:	kqueue kernel event notification mechanism (from FreeBSD)
    811 Status:		Terminated; merged to -current
    812 Start Date:	Tue Jul 10 23:08:38 EST 2001
    813 End Date:	Tue Oct 24 09:14:14 GMT 2002
    814 Base Tag:	kqueue-base
    815 Maintainer:	Jaromir Dolecek <jdolecek (a] NetBSD.org>
    816 Scope:		kernel, libc/sys, share/man/man9, usr.bin/fstat
    817 Notes:		Integration of FreeBSD's kqueue(2) mechanism, with various
    818 		local internal changes to better suit NetBSD, and
    819 		enhancements such as looking up filters by name or
    820 		number, and dynamic registration of "user" filters.
    821 		The work is complete as is, but is awaiting more
    822 		feedback from various kernel gurus before going mainline.
    823 
    824 Branch:		ktrace-lwp
    825 Description:	ktrace support for lwp ids.
    826 Status:		Terminated; merged to -current
    827 Start Date:	Wed Jul  2 15:27:30 UTC 2003
    828 End Date:	Sun Dec 11 12:25:29 UTC 2005
    829 Base Tag:	ktrace-lwp-base
    830 Maintainer:	Darren Reed <darrenr (a] NetBSD.org>
    831 Scope:		sys
    832 Notes:		
    833 
    834 Branch:		marc-pcmcia
    835 Description:	PCMCIA support
    836 Status:		Terminated; merged to -current
    837 Start Date:
    838 End Date:
    839 Base Tag:	marc-pcmcia-base, marc-pcmcia-bp
    840 Maintainer:	Marc Horowitz <marc (a] NetBSD.org>
    841 Scope:		kernel
    842 Notes:
    843 
    844 Branch:		minoura_x68k_bus_h
    845 Description:	bus_space(9) and bus_dma(9) implementation for x68k
    846 Status:		Terminated; merged to -current
    847 Start Date:	23 Dec 1998
    848 End Date:	16 Mar 1999
    849 Base Tag:	minoura_x68k_bus_h-base
    850 Maintainer:	Minoura Makoto <minoura (a] NetBSD.org>
    851 Scope:		sys/arch/x68k
    852 Notes:
    853 
    854 Branch:		minoura-xpg4dl
    855 Description:	Citrus Project locale subsystem
    856 Status:		Terminated; (partly) merged to -current
    857 Start Date:	28 March 2000
    858 End Date:
    859 Base Tag:	minoura-xpg4dl-base
    860 Maintainer:	Minoura Makoto <minoura (a] NetBSD.org>
    861 Scope:		basesrc, syssrc, sharesrc
    862 Notes:		Citrus Project is developing dynamically-loadable, codeset-
    863 		independent locale subsystem.  Part of the implementation
    864 		(LC_CTYPE) called XPG4DL is now integrated to -current.
    865 
    866 Branch:		mjf-ufs-trans
    867 Description:	filesystem transactions for ufs
    868 Status:		Active
    869 Start Date:	12 March 2007
    870 End Date:
    871 Base Tag:	mjf-ufs-trans-base
    872 Maintainer:	Matt Fleming <mjf (a] NetBSD.org>
    873 Scope:		kernel
    874 Notes:
    875 
    876 Branch:		mrg-vm-swap
    877 Description:	dynamic swap allocation, swap-to-files support
    878 Status:		Terminated; abondoned for mrg-vm-swap2
    879 Start Date:	12 February 1997
    880 End Date:	15 March 1997
    881 Base Tag:	[none]
    882 Maintainer:	Matthew R. Green <mrg (a] NetBSD.org>
    883 Scope:		kernel
    884 Notes:
    885 
    886 Branch:		mrg-vm-swap2
    887 Description:	dynamic swap allocation, swap-to-files support
    888 Status:		Terminated; merged to -current
    889 Start Date:	4 May 1997
    890 End Date:	12 June 1997
    891 Base Tag:	mrg-vm-swap2-base
    892 Maintainer:	Matthew R. Green <mrg (a] NetBSD.org>
    893 Scope:		kernel
    894 Notes:
    895 
    896 Branch:		nathanw_sa
    897 Description:	Scheduler activations
    898 Status:		Terminated; merged to -current
    899 Start Date:	5 March 2001
    900 End Date:	18 January 2003
    901 Base Tag:	nathanw_sa_base
    902 Maintainer:	Nathan Williams <nathanw (a] NetBSD.org>
    903 Scope:		kernel, libc, libkvm, libpthread, libpthread_dbg, include, 
    904 		bin/ps usr.bin/systat usr.bin/top usr.bin/w
    905 		gnu/dist/toolchain/gdb gnu/usr.bin/gdb
    906 Notes:		The idea of scheduler activations is described in the
    907 		classic paper by Anderson et al., in ACM Transactions
    908 		a on Computer Systems volume 10 issue 1 (1992),which
    909 		can be found at
    910 		http://www.acm.org/pubs/citations/journals/tocs/1992-10-1/p53-anderson/
    911 		Many ideas in the implementation are based on the
    912 		implementation of scheduler activations added to Mach
    913 		3.0 and described by Davis et al. in the University of
    914 		Washington CS tech report 92-08-93, which can be found
    915 		at
    916 		ftp://ftp.cs.washington.edu/tr/1992/08/UW-CSE-92-08-03.PS.Z
    917 
    918 		My USENIX paper on the subject can be found at
    919 		http://web.mit.edu/nathanw/www/usenix/
    920 
    921 		Please consult with the maintainer before committing
    922 		to this branch.
    923 		Other tags starting with nathanw_sa reserved for
    924 		branch management and are not guaranteed to be stable.
    925 
    926 		Trunk tagged with "nathanw_sa_before_merge" prior to
    927 		merging branch down to trunk.  Branch tagged with
    928 		"nathanw_sa_end" to indicate the ending revision of
    929 		the branch.
    930 
    931 Branch:		perseant-lfsv2
    932 Description:	LFS incompatible on-disk data structure changes
    933 Status:		Terminated
    934 Start Date:	27 June 2001
    935 End Date:	16 July 2001
    936 Base Tag:	perseant-lfsv2-base
    937 Maintainer:	Konrad Schroder <perseant (a] NetBSD.org>
    938 Scope:		basesrc/{sbin/*lfs,libexec/lfs_cleanerd,usr.sbin/dumplfs}, syssrc/sys/ufs
    939 Notes:		This branch should be short-lived, I expect to merge as soon
    940 		as the data structures required for unremove are in and tested.
    941 
    942 Branch:		thorpej-devvp
    943 Description:	replace dev_t with struct vnode * in devsw entry points
    944 Status:		Terminated
    945 Start Date:	Sep 6 2001
    946 End Date:	???
    947 Base Tag:	thorpej-devvp-base
    948 Maintainer:	Jason Thorpe <thorpej (a] NetBSD.org>
    949 Scope:		syssrc
    950 Notes:		Kernels built from this branch are not expected
    951 		to function correctly at this time.
    952 
    953 		Ports known to compile on this branch:
    954 			alpha
    955 			i386
    956 
    957 Branch:		peter-altq
    958 Description:	New ALTQ framework:
    959 		- sync with KAME sources
    960 		- share mtag/name mapping functions
    961 		- separate altq + pf attachment
    962 Status:		Terminated; merged to -current
    963 Start Date:	March 16, 2006
    964 End Date:	October 12, 2006
    965 Base Tag:	peter-altq-base
    966 Maintainer:	Peter Postma <peter (a] NetBSD.org>,
    967 		Martin Husemann <martin (a] NetBSD.org>,
    968 		Matthias Scheler <tron (a] NetBSD.org>
    969 Scope:		dist/pf dist/ipf distrib/sets/lists sys usr.sbin/altq
    970 Notes:		Only the first item in the description was finished
    971 		in this branch.
    972 
    973 Branch:		sommerfeld_i386mp_1
    974 Description:	Multiprocessor support for i386 using Intel MP BIOS.
    975 Status:		Terminated; merged to -current
    976 Start Date:	21 Feb 2000
    977 End Date:	01 Oct 2002
    978 Base Tag:	sommerfeld_i386mpbase_1
    979 Maintainer:	Bill Sommerfeld <sommerfeld (a] NetBSD.org>
    980 Scope:		sys/arch/i386
    981 Notes:
    982 		Code committed to the branch has booted to multiuser 
    983 		on at least one system.
    984 
    985 		Not guaranteed to compile against mainline since -current
    986 		may have changed incompatibly with the last branch update;
    987 		use "cvs update -D" to roll-back the rest of the tree to match.
    988 
    989 		Please get explicit permission from the maintainer 
    990 		before each commit, or your changes will be backed out.
    991 		Other tags starting with sommerfeld_ are private to 
    992 		the developer and are guaranteed to be unstable.
    993 		Only the maintainer should move tags.
    994 
    995 		Note that this branch uses a DIFFERENT scheme for 
    996 		synching with the mainline.  the maintainer uses some private
    997 		scripts for keeping them in synch; if you make commits 
    998 		to the branch to "resynchronize" things, you'll
    999 		probably do it wrong; instead, ask the maintainer to
   1000 		resynchronize things.
   1001 
   1002 		See sys/arch/i386/TODO on the branch for a list of known
   1003 		issues with the branch.
   1004 
   1005 Branch:		thorpej-mips-cache
   1006 Description:	overhaul MIPS cache support code
   1007 Status:		Terminated; merged to -current
   1008 Start Date:	Oct 23 2001
   1009 End Date:	Nov 14 2001
   1010 Base Tag:	thorpej-mips-cache-base
   1011 Scope:		syssrc
   1012 Notes:		This branch needs more debugging, testing, and more
   1013 		ports need to be converted to the new world order.
   1014 
   1015 		The following processors have had cache ops
   1016 		written:
   1017 
   1018 			* R2000/R3000 (cache_r3k) -- light testing,
   1019 			  needs to be beat on a lot more to make
   1020 			  sure it's working.
   1021 
   1022 			* R4000/R4400 (cache_r4k) -- mhitch (a] NetBSD.org
   1023 			  tracked down a bug, which has been fixed.
   1024 
   1025 			  Confirmed working on R4000-with-L2.
   1026 
   1027 			  Confirmed working on R4400-no-L2 and
   1028 			  R4400-with-L2.
   1029 
   1030 			* R4600/R5000 (cache_r5k) -- shin (a] NetBSD.org
   1031 			  has committed fixes to this code.
   1032 
   1033 			  Confirmed working on R4600 v2 (SGI IP-22 with
   1034 			  no SysAD L2 cache).
   1035 
   1036 			  Confirmed working on RM5260 (Algorithmics P-5064).
   1037 
   1038 			* TX39 (cache_tx39) -- uch (a] NetBSD.org has
   1039 			  committed fixes to this code.  Awaiting
   1040 			  confirmation that it is working properly.
   1041 
   1042 			* R5900 (cache_r5900) -- uch (a] NetBSD.org has
   1043 			  written this code and tested it on a
   1044 			  PlayStation 2.
   1045 
   1046 		The following ports have been updated to compile (and
   1047 		use optimized-for-processor bus_dma routines).  Those
   1048 		that have been tested and work are marked with [WORKING].
   1049 
   1050 			* algor		[WORKING]
   1051 
   1052 			* arc		[WORKING]
   1053 
   1054 			* pmax		[WORKING]
   1055 
   1056 			* playstation2	[WORKING]
   1057 					Needs optimized bus_dmamap_sync().
   1058 
   1059 			* hpcmips	[need verification that this is working]
   1060 					Needs optimized bus_dmamap_sync().
   1061 
   1062 			* sgimips	[WORKING]
   1063 					Needs optimized bus_dmamap_sync().
   1064 
   1065 			* cobalt	[need testing]
   1066 
   1067 			* mipsco	[need testing]
   1068 
   1069 			* newsmips	[need testing]
   1070 
   1071 Branch:		thorpej_scsipi
   1072 Description:	SCSI/ATAPI midlayer rewrite.
   1073 Status:		Terminated; merged to -current
   1074 Start Date:
   1075 End Date:	Apr 25 2001
   1076 Base Tag:	thorpej_scsipi_base, thorpej_scsipi_nbase
   1077 Maintainer:	Manuel Bouyer <bouyer (a] NetBSD.org>,
   1078 		Jason Thorpe <thorpej (a] NetBSD.org>
   1079 Scope:		syssrc
   1080 Notes:		When a change from -current is pulled up please move the
   1081 		thorpej_scsipi_base tag to the revision you're syncing with.
   1082 		thorpej_scsipi_nbase is private to maintainer (only
   1083 		used when syncing the whole branch with HEAD).
   1084 		Just before the merge, syssrc has been tagged with
   1085 		thorpej_scsipi_beforemerge
   1086 
   1087 Branch:		thorpej-signal
   1088 Description:	?
   1089 Status:		?
   1090 Start Date:
   1091 End Date:
   1092 Base Tag:	thorpej-signal-base
   1093 Maintainer:	Jason Thorpe <thorpej (a] NetBSD.org>
   1094 Scope:		kernel
   1095 Notes:
   1096 
   1097 Branch:		thorpej-setroot
   1098 Description:	?
   1099 Status:		Terminated; merged to -current
   1100 Start Date:
   1101 End Date:
   1102 Base Tag:
   1103 Maintainer:	Jason Thorpe <thorpej (a] NetBSD.org>
   1104 Scope:		kernel
   1105 Notes:
   1106 
   1107 Branch:		simonb-timecounters
   1108 Description:	Port FreeBSD timecounters to NetBSD
   1109 Status:		Terminated
   1110 Start Date:	Sat Feb 04 2006
   1111 End Date:	Wed Jun 07 2006
   1112 Base Tag:	simonb-timecounters-base
   1113 Maintainer:	Simon Burge <simonb (a] NetBSD.org>,
   1114 		Frank Kardel <kardel (a] NetBSD.org>
   1115 Scope:		sys, sbin/savecore, usr.bin/vmstat, usr.sbin/ntp
   1116 Notes:		early (partial conversion) commit to -current
   1117 		ok'ed by core@ on 20060605 for testing and further
   1118 		simplified conversion
   1119 
   1120 Branch:		wrstuden-devbsize
   1121 Description:	Modify buffer cache to deal with different devices having
   1122 		different block sizes. Also DEV_BSIZE would go away.
   1123 Status:		Terminated
   1124 Start Date:	Aug or Sept 1999
   1125 End Date:	1 Apr 2000
   1126 Base tag:	wrstuden-devbsize-base
   1127 Maintainer:	Bill Studenmund <wrstuden (a] NetBSD.org>
   1128 Scope:		kernel
   1129 Notes:		No longer active due to lack of time, and introduction
   1130 		of UBC. In terms of UBC, the primary cache for
   1131 		file data is the VM cache, which needs to operate
   1132 		in terms of VM pages. As no existing device has native
   1133 		pages the same size as our VM pages, there already is
   1134 		a mapping going on between the VM system and the
   1135 		underlying blocks. So it would be easier and cleaner
   1136 		to adjust that to deal w/ different block sizes.
   1137 		Also with UBC, all i/o is in terms of bytes at an offset
   1138 		with a certain length, so the exact block size isn't a big
   1139 		deal.
   1140 
   1141 		Any other wrstuden-devbsize tag may (and should) go away.
   1142 
   1143 Branch:		yamt-idlelwp
   1144 Description:	idle lwp, and some changes depending on it.
   1145 
   1146 		1. separate context switching and thread scheduling.
   1147 		   (cf. gmcgarry_ctxsw)
   1148 		2. implement idle lwp.
   1149 		3. clean up related MD/MI interfaces.
   1150 		4. make scheduler(s) modular.
   1151 
   1152 Status:		Terminated; merged to -current
   1153 Start Date:	Fri Feb 17 2007
   1154 End Date:	Thu May 17 2007
   1155 Base Tag:	yamt-idlelwp-base8
   1156 Maintainer:	YAMAMOTO Takashi <yamt (a] NetBSD.org>
   1157 Scope:		src/sys  (src/common is tagged but not branched)
   1158 Notes:		
   1159 		Status of ports:
   1160 		  alpha			[ Done, UP tested, MP not tested ]
   1161 		  i386			[ Done, tested ]
   1162 		  amd64			[ Done, tested ]
   1163 		  mips			[ Done, MIPS1 tested, MIPSX needs
   1164 					  further testing + fixes ]
   1165 		  sparc			[ WIP, commited known broken ]
   1166 		  sparc64		[ WIP, commited known broken ]
   1167 		  arm			[ Done, SA1 tested. ]
   1168 		  macppc/powerpc	[ Done, OEA tested ]
   1169 		  hppa			[ WIP. SYSCALLGATE trap issues remain. ]
   1170 		  sh3			[ Done, tested ]
   1171 		  vax			[ Done, UP tested, MP untested ]
   1172 		  m68k			[ broken ]
   1173 		  ns32k			[ broken ]
   1174 		  ia64			[ broken ]
   1175 		  pdp10			[ broken ]
   1176 
   1177 		How to adapt a port?
   1178 
   1179 		- unify cpu_switch, cpu_exit, cpu_switchto into
   1180 		  a single cpu_switchto.  see cpu_switchto.9.
   1181 
   1182 		- implement cpu_idle.  see cpu_idle.9.
   1183 
   1184 		- add a flag argument to cpu_need_resched.
   1185 		  handle RESCHED_IMMED flag, which means "cause a preemption
   1186 		  as soon as possible."  eg. in the case of MULTIPROCESSOR,
   1187 		  send an IPI to the target cpu.
   1188 
   1189 		- "curlwp == NULL" is not a valid check for idle state anymore.
   1190 		  use "(curlwp->l_flag & LW_IDLE) != 0" instead.  curlwp is
   1191 		  almost always non-NULL, with exceptions like early on boot.
   1192 
   1193 		- remove idle pcbs.
   1194 
   1195 		- (if MULTIPROCESSOR) tweak processor trampoline code.
   1196 
   1197 		- (if MULTIPROCESSOR) call mi_cpu_attach when attaching
   1198 		  secondary processors.
   1199 
   1200 		- (if schedhz!=0) call schedclock regardless of the value of
   1201 		  curlwp.
   1202 
   1203 		- of course, update MD users of scheduler/switching API.
   1204 
   1205 Branch:		yamt-km, yamt-km-doc
   1206 Description:	simplify/improve kernel memory management and bootstrap
   1207 Status:		Terminated; merged to -current
   1208 Start Date:	Tue Jan 25 2005
   1209 End Date:	Fri Apr  1 2005
   1210 Base Tag:	yamt-km-base{,2,3,4}, yamt-km-doc-base
   1211 Maintainer:	YAMAMOTO Takashi <yamt (a] NetBSD.org>
   1212 Scope:		yamt-km: src/sys
   1213 		yamt-km-doc: src/share/man/man9/uvm.9
   1214 Notes:		http://mail-index.NetBSD.org/tech-kern/2004/12/25/0005.html
   1215 
   1216 		the followings are per-port status.
   1217 		(account names mean "tested by".)
   1218 
   1219 		works enough to go to multiuser:
   1220 			alpha, i386, xen (yamt@)
   1221 			pc532 (simonb@)
   1222 			alpha, i386, mac68k, macppc, pmax, shark,
   1223 			    sparc, sparc64, sun3, x68k (chs@)
   1224 			cobalt, dreamcast, hp300, news68k, newsmips,
   1225 			    sun3x (tsutsui@)
   1226 			amiga (mhitch@)
   1227 			cats, hp700 (skrll@)
   1228 			xen (bouyer@)
   1229 
   1230 		known to have the same problem as trunk:
   1231 			vax (chs@, stuck while running kvm_mkdb)
   1232 
   1233 		known to have a problem:
   1234 			luna68k (and, if any, other m68k ports which use TTR)
   1235 			needs to be revisited.
   1236 			-> for luna68k, although not tested,
   1237 			   Sysmap has been moved to avoid kva conflict with
   1238 			   I/O ranges.
   1239 
   1240 		buildable:
   1241 			src/sys/arch/acorn26/conf/GENERIC
   1242 			src/sys/arch/acorn32/conf/GENERIC
   1243 			src/sys/arch/algor/conf/P6032
   1244 			src/sys/arch/alpha/conf/GENERIC
   1245 			src/sys/arch/alpha/conf/GENERIC.MP
   1246 			src/sys/arch/amd64/conf/GENERIC
   1247 			src/sys/arch/amd64/conf/GENERIC.MP
   1248 			src/sys/arch/amiga/conf/GENERIC
   1249 			src/sys/arch/arc/conf/GENERIC
   1250 			src/sys/arch/atari/conf/MILAN-PCIIDE
   1251 			src/sys/arch/bebox/conf/GENERIC
   1252 			src/sys/arch/cats/conf/GENERIC
   1253 			src/sys/arch/cesfic/conf/GENERIC
   1254 			src/sys/arch/cobalt/conf/GENERIC
   1255 			src/sys/arch/dreamcast/conf/GENERIC
   1256 			src/sys/arch/evbarm/conf/TS7200
   1257 			src/sys/arch/evbppc/conf/WALNUT
   1258 			src/sys/arch/evbsh3/conf/COMPUTEXEVB
   1259 			src/sys/arch/evbsh5/conf/CAYMAN64
   1260 			src/sys/arch/hp300/conf/GENERIC
   1261 			src/sys/arch/hp700/conf/GENERIC
   1262 			src/sys/arch/hpcarm/conf/JORNADA728
   1263 			src/sys/arch/hpcmips/conf/GENERIC
   1264 			src/sys/arch/hpcsh/conf/GENERIC
   1265 			src/sys/arch/hpcsh/conf/HPW650PA
   1266 			src/sys/arch/i386/conf/GENERIC
   1267 			src/sys/arch/i386/conf/GENERIC.MP
   1268 			src/sys/arch/i386/conf/XEN0
   1269 			src/sys/arch/i386/conf/XENU
   1270 			src/sys/arch/ibmnws/conf/GENERIC
   1271 			src/sys/arch/iyonix/conf/GENERIC
   1272 			src/sys/arch/luna68k/conf/GENERIC
   1273 			src/sys/arch/mac68k/conf/GENERIC
   1274 			src/sys/arch/macppc/conf/GENERIC
   1275 			src/sys/arch/macppc/conf/GENERIC.MP
   1276 			src/sys/arch/mipsco/conf/GENERIC
   1277 			src/sys/arch/mmeye/conf/GENERIC
   1278 			src/sys/arch/mvme68k/conf/GENERIC
   1279 			src/sys/arch/netwinder/conf/GENERIC
   1280 			src/sys/arch/news68k/conf/GENERIC
   1281 			src/sys/arch/newsmips/conf/GENERIC
   1282 			src/sys/arch/next68k/conf/GENERIC
   1283 			src/sys/arch/ofppc/conf/GENERIC
   1284 			src/sys/arch/pc532/conf/GENERIC
   1285 			src/sys/arch/pmax/conf/GENERIC
   1286 			src/sys/arch/prep/conf/GENERIC
   1287 			src/sys/arch/sandpoint/conf/GENERIC
   1288 			src/sys/arch/sbmips/conf/GENERIC
   1289 			src/sys/arch/sgimips/conf/GENERIC32_IP3x
   1290 			src/sys/arch/shark/conf/GENERIC
   1291 			src/sys/arch/sparc/conf/GENERIC
   1292 			src/sys/arch/sparc/conf/GENERIC.MP
   1293 			src/sys/arch/sparc64/conf/GENERIC
   1294 			src/sys/arch/sparc64/conf/GENERIC.MP
   1295 			src/sys/arch/sun2/conf/GENERIC
   1296 			src/sys/arch/sun3/conf/GENERIC
   1297 			src/sys/arch/vax/conf/GENERIC
   1298 			src/sys/arch/vax/conf/GENERIC.MP
   1299 			src/sys/arch/x68k/conf/GENERIC
   1300 
   1301 			src/sys/arch/playstation2/conf/GENERIC
   1302 
   1303 Branch:		yamt-pdpolicy
   1304 Description:	play with page replacement policy
   1305 		- separate page replacement policy from the rest of kernel
   1306 		- implement alternative replacement policy
   1307 		- related read-ahead adjustment?
   1308 Status:		Terminated; merged to -current
   1309 Start Date:	Sun Mar  5 2006
   1310 End Date:	Sat Sep 16 2006
   1311 Base Tag:	yamt-pdpolicy-base9
   1312 Maintainer:	YAMAMOTO Takashi <yamt (a] NetBSD.org>
   1313 Scope:		src/sys  (src/common is tagged but not branched)
   1314 Notes:		
   1315 
   1316 Branch:		yamt-readahead
   1317 Description:	play with file readahead
   1318 Status:		Terminated; merged to -current
   1319 Start Date:	Mon Nov 14 2005
   1320 End Date:	Wed Nov 30 2005
   1321 Base Tag:	yamt-readahead-base3
   1322 Maintainer:	YAMAMOTO Takashi <yamt (a] NetBSD.org>
   1323 Scope:		src/sys
   1324 Notes:		
   1325 
   1326 Branch:		yamt-uio_vmspace
   1327 Description:	uio_lwp/uio_segflg -> uio_vmspace
   1328 Status:		Terminated; merged to -current
   1329 Start Date:	Mon Dec 31 2005
   1330 End Date:	Wed Mar  1 2006
   1331 Base Tag:	yamt-uio_vmspace-base5
   1332 Maintainer:	YAMAMOTO Takashi <yamt (a] NetBSD.org>
   1333 Scope:		src/sys
   1334 Notes:		
   1335 
   1336 Branch:		yamt-splraiseipl
   1337 Description:	finish implementing splraiseipl (and makeiplcookie).
   1338 		http://mail-index.NetBSD.org/tech-kern/2006/07/01/0000.html
   1339 
   1340 		- completes workqueue(9) and netbt.
   1341 		- fix PR/33218.
   1342 
   1343 Status:		Terminated; merged to -current
   1344 Start Date:	Mon Sep 18 2006
   1345 End Date:	Fri Dec 22 2006
   1346 Base Tag:	yamt-splraiseipl-base5
   1347 Maintainer:	YAMAMOTO Takashi <yamt (a] NetBSD.org>
   1348 Scope:		src/sys  (src/common is tagged but not branched)
   1349 Notes:		
   1350 		tested (by who):
   1351 			alpha		(yamt)
   1352 			alpha		(pavel)
   1353 			amd64		(reported privately)
   1354 			cobalt		(tsutsui)
   1355 			ews4800mips	(tsutsui)
   1356 			hp300		(tsutsui)
   1357 			hpcarm		(reported privately)
   1358 			i386		(yamt)
   1359 			macppc		(tsutsui)
   1360 			news68k		(tsutsui)
   1361 			sgimips(IP32)	(tsutsui)
   1362 			sparc(sun4c)	(tsutsui)
   1363 			sun2		(tsutsui)
   1364 			sun3		(tsutsui)
   1365 			sun3x		(tsutsui)
   1366 			xen		(yamt)
   1367 
   1368 		compile-tested:
   1369 			acorn26
   1370 			acorn32
   1371 			algor
   1372 			amiga
   1373 			arc
   1374 			atari
   1375 			bebox
   1376 			cats
   1377 			cesfic
   1378 			dreamcast
   1379 			evbarm
   1380 			evbmips
   1381 			evbppc(marvell)
   1382 			evbppc(ibm4xx)
   1383 			evbsh3
   1384 			hp700
   1385 			hpcmips
   1386 			hpcsh
   1387 			ia64
   1388 			ibmnws
   1389 			iyonix
   1390 			landisk
   1391 			luna68k
   1392 			mac68k
   1393 			mmeye
   1394 			mvme68k
   1395 			mvmeppc
   1396 			mipsco
   1397 			netwinder
   1398 			newsmips
   1399 			next68k
   1400 			ofppc
   1401 			pc532
   1402 			pmax
   1403 			pmppc
   1404 			prep
   1405 			sandpoint
   1406 			sbmips
   1407 			shark
   1408 			sparc
   1409 			sparc64
   1410 			vax
   1411 			x68k
   1412 			zaurus
   1413 
   1414 		not tested:
   1415 			pdp10 (i don't know how to build)
   1416 			sh5 (not buildable with an unrelated problem.)
   1417 
   1418     compile  CAYMAN64/netbsd32_sa.o
   1419     cc1: warnings being treated as errors
   1420     /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c: In function 'netbsd32_sa_ucsp':
   1421     /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c:126: warning: implicit declaration of function '_UC_MACHINE32_SP'
   1422     --- netbsd32_sa.o ---
   1423     *** [netbsd32_sa.o] Error code 1
   1424     1 error
   1425 
   1426 		notyet:
   1427 			amigappc
   1428 			playstation2
   1429 
   1430 Branch:		yamt-vop
   1431 Description:	remove several VOPs
   1432 Status:		Terminated; merged to -current
   1433 Start Date:	Wed Oct 19 2005
   1434 End Date:	Wed Nov  2 2005
   1435 Base Tag:	yamt-vop-base3
   1436 Maintainer:	YAMAMOTO Takashi <yamt (a] NetBSD.org>
   1437 Scope:		src/sys
   1438 Notes:		http://mail-index.NetBSD.org/tech-kern/2005/09/27/0000.html
   1439 
   1440 Branch:		gdamore-uart
   1441 Description:	Add register table support to com driver.
   1442 Status:		Active
   1443 Start Date:	14 June 2006
   1444 End Date:	13 July 2006
   1445 Base Tag:	gdamore-uart-base
   1446 Maintainer:	Garrett D'Amore <gdamore (a] NetBSD.org>
   1447 Scope:		kernel
   1448 Notes:		Results in consolidation of Alchemy (mips/dev/alchemy/aucom.c)
   1449 		com support, and also removes a nasty hack from Atheros com.
   1450 
   1451 ########################################################################
   1452 # Other:
   1453 ########################################################################
   1454 
   1455 Branch:		magnum
   1456 Description:	?
   1457 Status:		?
   1458 Start Date:
   1459 End Date:
   1460 Base Tag:	magnum-base
   1461 Maintainer:	?
   1462 Scope:		kernel
   1463 Notes:
   1464 
   1465