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