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