BRANCHES revision 1.257
11.47Srillig#	$NetBSD: BRANCHES,v 1.257 2008/06/17 11:37:35 yamt Exp $
21.1Srillig#
31.1Srillig# This file contains a list of branches that exist in the NetBSD CVS
41.1Srillig# tree and their current state.
51.1Srillig#
61.1Srillig# This list is necessarily incomplete.
71.1Srillig# 
81.1Srillig# Within reason, developers may create branch and version tags at any
91.1Srillig# time for any purpose.  To avoid name collisions, private tags should
101.1Srillig# have names which begin with the developer's NetBSD login name
111.1Srillig# followed by a - or _ character (e.g., thorpej_scsipi,
121.1Srillig# thorpej-signal)
131.1Srillig# 
141.1Srillig# Any branch or version tag not listed here should be assumed to be
151.1Srillig# private to the developer who created it.  It is inappropriate for
161.1Srillig# anyone other than that developer to commit, move tags, or otherwise
171.1Srillig# modify the contents of the branch.
181.1Srillig#
191.1Srillig# Please update this file when a new branch is ready for consumption
201.1Srillig# by folks other than the maintainer, or when the use or status of an
211.1Srillig# existing branch changes significantly.
221.1Srillig#
231.1Srillig# Format:
241.1Srillig#   Branch:	  name of branch
251.1Srillig#   Description:  Purpose and intention of the branch
261.1Srillig#   Status:	  Active/Terminated/Dormant
271.1Srillig#   Start Date:	  date first instantiated
281.1Srillig#   End Date:	  date it was Terminated/made_Dormant, if any
291.1Srillig#   Base Tag:	  netbsd-1-5-base, etc.
301.1Srillig#   Maintainer:	  Somebody to blame.
311.1Srillig#   Scope:	  Portion of the tree covered.
321.1Srillig#   Notes:	  Various other info, perhaps explanation of special tags,
331.1Srillig#		  who-may-commit policies, etc.
341.1Srillig#
351.1Srillig# There are four sections to this file:
361.1Srillig#   Release branches
371.18Srillig#   Individual developers' branches (Active/Dormant)
381.47Srillig#   Individual developers' branches (Terminated), and
391.1Srillig#   other
401.1Srillig#
411.2Srillig# Entries within each section should be alphabetized.
421.2Srillig#
431.1Srillig
441.9Srillig
451.1Srillig# Release branches:
461.1Srillig
471.1SrilligBranch:		comdex-fall-1999
481.1SrilligDescription:	Special release branch for pre-1.5 release at
491.1Srillig		Fall 1999 COMDEX.
501.1SrilligStatus:		Terminated
511.1SrilligStart Date:
521.32SrilligEnd Date:
531.32SrilligBase Tag:	comdex-fall-1999-base
541.32SrilligMaintainer:	?
551.32SrilligScope:		Entire tree.
561.32SrilligNotes:
571.32Srillig
581.32SrilligBranch:		netbsd-0-9
591.32SrilligDescription:	The NetBSD 0.9 release branch
601.32SrilligStatus:		Terminated
611.32SrilligStart Date:
621.32SrilligEnd Date:
631.32SrilligBase Tag:	netbsd-0-9-base
641.32SrilligMaintainer:	Release Engineering <releng@NetBSD.org>
651.34SrilligScope:		Entire tree.
661.1SrilligNotes:		Subsidiary tags of: netbsd-0-9-ALPHA, netbsd-0-9-ALPHA2,
671.1Srillig		netbsd-0-9-BETA, netbsd-0-9-RELEASE.
681.1Srillig		Commits restricted to release engineering.
691.1Srillig
701.1SrilligBranch:		netbsd-1-0
711.32SrilligDescription:	The NetBSD 1.0 release branch
721.1SrilligStatus:		Terminated
731.1SrilligStart Date:
741.1SrilligEnd Date:
751.1SrilligBase Tag:	netbsd-1-0-base
761.7SrilligMaintainer:	Release Engineering <releng@NetBSD.org>
771.1SrilligScope:		Entire tree.
781.1SrilligNotes:
791.1Srillig		Commits restricted to release engineering.
801.1Srillig
811.1SrilligBranch:		netbsd-1-1
821.1SrilligDescription:	The NetBSD 1.1 release branch
831.1SrilligStatus:		Terminated
841.1SrilligStart Date:
851.1SrilligEnd Date:
861.1SrilligBase Tag:	netbsd-1-1-base
871.1SrilligMaintainer:	Release Engineering <releng@NetBSD.org>
881.1SrilligScope:		Entire tree.
891.1SrilligNotes:
901.1Srillig		Commits restricted to release engineering.
911.1Srillig
921.1SrilligBranch:		netbsd-1-2
931.1SrilligDescription:	The NetBSD 1.2 release branch
941.1SrilligStatus:		Terminated
951.1SrilligStart Date:
961.1SrilligEnd Date:
971.28SrilligBase Tag:	netbsd-1-2-base
981.1SrilligMaintainer:	Release Engineering <releng@NetBSD.org>
991.1SrilligScope:		Entire tree.
1001.32SrilligNotes:
1011.1Srillig		Commits restricted to release engineering.
1021.1Srillig
1031.34SrilligBranch:		netbsd-1-3
1041.1SrilligDescription:	The NetBSD 1.3 release branch
1051.1SrilligStatus:		Terminated
1061.1SrilligStart Date:
1071.1SrilligEnd Date:
1081.7SrilligBase Tag:	netbsd-1-3-base
1091.1SrilligMaintainer:	Release Engineering <releng@NetBSD.org>
1101.32SrilligScope:		Entire tree.
1111.1SrilligNotes:
1121.32Srillig		Commits restricted to release engineering.
1131.1Srillig
1141.1SrilligBranch:		netbsd-1-4
1151.1SrilligDescription:	The NetBSD 1.4 release branch
1161.28SrilligStatus:		Terminated
1171.1SrilligStart Date:	1 Apr 2000
1181.1SrilligEnd Date:
1191.32SrilligBase Tag:	netbsd-1-4-base
1201.1SrilligMaintainer:	1.4 Release Engineering <releng-1-4@NetBSD.org>
1211.1SrilligScope:		Entire tree.
1221.22SrilligNotes:
1231.22Srillig		Commits restricted to release engineering.
1241.22Srillig
1251.22SrilligBranch:		netbsd-1-5
1261.22SrilligDescription:	The NetBSD 1.5 release branch
1271.22SrilligStatus:		Terminated
1281.38SrilligStart Date:	20 Jun 2000
1291.44SrilligEnd Date:	26 Jan 2005
1301.38SrilligBase Tag:	netbsd-1-5-base
1311.38SrilligMaintainer:	1.5 Release Engineering <releng-1-5@NetBSD.org>
1321.29SrilligScope:		Entire tree.
1331.22SrilligNotes:
1341.22Srillig		Commits restricted to release engineering.
1351.22Srillig
1361.22SrilligBranch:		netbsd-1-6
1371.22SrilligDescription:	The NetBSD 1.6 release branch
1381.22SrilligStatus:		Terminated
1391.22SrilligStart Date:	22 May 2002
1401.22SrilligEnd Date:
1411.22SrilligBase Tag:	netbsd-1-6-base
1421.22SrilligMaintainer:	1.6 Release Engineering <releng-1-6@NetBSD.org>
1431.22SrilligScope:		Entire tree.
1441.22SrilligNotes:
1451.22Srillig		Commits restricted to Release Engineering.
1461.22Srillig
1471.22SrilligBranch:		netbsd-2
1481.22SrilligDescription:    The NetBSD 2 release branch
1491.22SrilligStatus:		Active
1501.22SrilligStart Date:	23 Dec 2004
1511.22SrilligEnd Date:
1521.22SrilligBase Tag:	netbsd-2-base
1531.22SrilligMaintainer:	2 Release Engineering <releng-2@NetBSD.org>
1541.22SrilligScope:		Entire tree. (src + xsrc)
1551.22SrilligNotes:
1561.22Srillig		Commits restricted to Release Engineering.
1571.1Srillig
1581.10SrilligBranch:		netbsd-2-0
1591.1SrilligDescription:	Originally the NetBSD 2.0 release branch and now the branch 
1601.1Srillig		tracking security/critical fixes for the NetBSD 2.0 series
1611.1SrilligStatus:		Active
1621.1SrilligStart Date:	28 Mar 2004 and changed for security/critical function on
1631.2Srillig       		23 Dec 2004
1641.1SrilligEnd Date:
1651.1SrilligBase Tag:	netbsd-2-0-base
1661.1SrilligMaintainer:	2.0 Release Engineering <releng-2-0@NetBSD.org>
1671.1SrilligScope:		Entire tree. (src + xsrc)
1681.7SrilligNotes:		Branch was re-purposed to security/critical change function
1691.20Srillig		once 2.0 released. See netbsd-2 for current branch to track
1701.20Srillig		NetBSD 2 tree.
1711.20Srillig		Commits restricted to Release Engineering.
1721.20Srillig
1731.20SrilligBranch:		netbsd-2-1
1741.20SrilligDescription:	Tracking security/critical fixes for NetBSD 2.1
1751.20SrilligStatus:		Active
1761.20SrilligStart Date:     26 Oct 2005 
1771.20SrilligEnd Date:
1781.20SrilligBase Tag:	netbsd-2-1-RELEASE
1791.20SrilligMaintainer:	2 Release Engineering <releng-2@NetBSD.org>
1801.20SrilligScope:		Entire tree. (src + xsrc)
1811.20SrilligNotes:		Branch contains only security/critical fixes to
1821.20Srillig		NetBSD 2.1.  For new features, use netbsd-2 branch.
1831.20Srillig		Commits restricted to Release Engineering.
1841.1Srillig
1851.24SrilligBranch:		netbsd-3
1861.24SrilligDescription:	The NetBSD 3 release branch
1871.20SrilligStatus:		Active
1881.24SrilligStart Date:	16 Mar 2005
1891.24SrilligEnd Date:
1901.24SrilligBase Tag:	netbsd-3-base
1911.45SrilligMaintainer:	3 Release Engineering <releng-3@NetBSD.org>
1921.24SrilligScope:		Entire tree. (src + xsrc)
1931.27SrilligNotes:
1941.45Srillig		Commits restricted to Release Engineering.
1951.24Srillig
1961.27SrilligBranch:		netbsd-4
1971.45SrilligDescription:	The NetBSD 4 release branch
1981.27SrilligStatus:		Active
1991.27SrilligStart Date:	8 Aug 2006
2001.27SrilligEnd Date:
2011.45SrilligBase Tag:	netbsd-4-base
2021.27SrilligMaintainer:	4 Release Engineering <releng-4@NetBSD.org>
2031.36SrilligScope:		Entire tree. (src + xsrc)
2041.27SrilligNotes:
2051.36Srillig		Commits restricted to Release Engineering.
2061.35Srillig
2071.27Srillig########################################################################
2081.24Srillig# Individual developers' branches (Active/Dormant):
2091.24Srillig########################################################################
2101.24Srillig
2111.24SrilligBranch:		ad-audiomp
2121.24SrilligDescription:	Add MP locking to the audio drivers
2131.24SrilligStatus:		Active
2141.24SrilligStart Date:	28 February 2007
2151.24SrilligEnd Date:
2161.24SrilligBase Tag:	ad-audiomp-base
2171.24SrilligMaintainer:	Andrew Doran <ad@NetBSD.org>
2181.24SrilligScope:		kernel
2191.24SrilligNotes:		Making the audio drivers MP safe is necessary before efforts
2201.24Srillig		can be made to make the VM system MP safe. About 1/2 of the
2211.24Srillig		drivers are converted, the remaining 1/2 need more changes.
2221.24Srillig
2231.24Srillig		As of import this is snapshot of work in progress and so
2241.2Srillig		may not compile; in particular the midi changes are very
2251.1Srillig		much "in progress". The audio component has been tested
2261.2Srillig		and verified to work with emuxki and auvia. There may
2271.30Srillig		be a locking issue in the ac97 code at boot.
2281.2Srillig
2291.33Srillig		The are two locks per device instance, an ISR lock and
2301.47Srillig		a character device lock. The ISR lock replaces calls to
2311.47Srillig		splaudio()/splx(), and will be held across calls to device
2321.33Srillig		methods which were called at splaudio() before (e.g.
2331.30Srillig		trigger_output). The character device lock is held across
2341.2Srillig		calls to nearly all of the methods, excluding some only
2351.2Srillig		used for initialization, e.g. get_locks. This needs to be
2361.1Srillig		documented at merge time.
2371.1Srillig
2381.1Srillig		To test on a multi way x86 system, search for "mpsafe" in
2391.9Srillig		x86/x86/intr.c and change IPL_SCHED to IPL_AUDIO. Run a job
2401.9Srillig		that will acquire the ISR lock (depends on the hardware, but
2411.9Srillig		"while true; do mixerctl -a > /dev/null; done" may suffice).
2421.9Srillig		Play audio, run lockstat and verify that that there is
2431.9Srillig		contention on the ISR lock.
2441.9Srillig
2451.9SrilligBranch:		bjh21-hydra
2461.9SrilligDescription:	Simtec Hydra support and ARM SMP in general
2471.9SrilligStatus:		Dormant
2481.9SrilligStart Date:	18 Oct 2002
2491.9SrilligEnd Date:
2501.9SrilligBase Tag:	bjh21-hydra-base
2511.9SrilligMaintainer:	Ben Harris <bjh21@NetBSD.org>
2521.9SrilligScope:		sys/arch/arm sys/arch/acorn32
2531.40SrilligNotes:		This code was on a branch because it involves changes to
2541.17Srillig		cpuswitch.S which would otherwise make merging the
2551.17Srillig		nathanw_sa branch difficult.
2561.17Srillig
2571.40SrilligBranch:		chris-arm-intr-rework
2581.40SrilligDescription:	Rework arm interrupt handling code
2591.40SrilligStatus:		Active
2601.40SrilligStart Date:	11 Aug 2007
2611.40SrilligEnd Date:
2621.17SrilligBase Tag:	chris-arm-intr-rework-base
2631.17SrilligMaintainer:	Chris Gilbert <chris@NetBSD.org>
2641.17SrilligScope:		sys/arch/arm sys/arch/cats (other arm archs to follow)
2651.17SrilligNotes:		Rework arm interrupt code to provide a shared set of interrupt
2661.40Srillig		routines, and allow improvements to be shared across all arm
2671.17Srillig		based hardware.
2681.17Srillig
2691.17SrilligBranch:		cube-autoconf
2701.9SrilligDescription:	Renovate autoconf(9) API
2711.9SrilligStatus:		Active
2721.9SrilligStart Date:	11 Dec 2007
2731.9SrilligEnd Date:
2741.9SrilligBase Tag:	cube-autoconf-base
2751.9SrilligMaintainer:	Quentin Garnier <cube@NetBSD.org>
2761.9SrilligScope:		kernel usr.bin/config (and some other userland bits)
2771.9SrilligNotes:		Address a number of issues the current autoconf(9) API has.
2781.9Srillig
2791.9SrilligBranch:		gmcgarry_ctxsw
2801.9SrilligDescription:	Separate scheduler from context-switch code
2811.9SrilligStatus:		Dormant
2821.9SrilligStart Date:	18 December 2002
2831.9SrilligEnd Date:
2841.9SrilligBase Tag:	gmcgarry_ctxsw_base
2851.9SrilligMaintainer:	Gregory McGarry <gmcgarry@NetBSD.org>
2861.9SrilligScope:		kernel
2871.9SrilligNotes:		Removing knowledge of the scheduler and its run queues
2881.9Srillig		from the machine-dependent context switch code is the
2891.9Srillig		first step in cleaning up the scheduler.  It is necessary
2901.9Srillig		for the newlock branch, making the scheduler SMP friendly,
2911.9Srillig		adding real-time scheduler extensions, and reducing the
2921.9Srillig		number of code paths for LWP and proc switching.
2931.9Srillig
2941.9SrilligBranch:		gmcgarry_ucred
2951.9SrilligDescription:	Integrate and encapsulate user credentials
2961.9SrilligStatus:		Dormant
2971.9SrilligStart Date:	18 December 2002
2981.9SrilligEnd Date:
2991.9SrilligBase Tag:	gmcgarry_ucred_base
3001.9SrilligMaintainer:	Gregory McGarry <gmcgarry@NetBSD.org>
3011.9SrilligScope:		kernel
3021.9SrilligNotes:		merge pcred and ucred and poolify
3031.9Srillig
3041.9SrilligBranch:		hpcarm-cleanup
3051.9SrilligDescription:	Fix build problems for hpcarm
3061.9SrilligStatus:		Active
3071.9SrilligStart Date:	31 July 2007
3081.9SrilligEnd Date:
3091.9SrilligBase Tag:	hpcarm-cleanup-base
3101.9SrilligMaintainer:	Robert Swindells <rjs@NetBSD.org>
3111.9SrilligScope:		kernel
3121.9SrilligNotes:		Modify SA11x0 interrupt code to match PXA2x0 equivalent.
3131.9Srillig
3141.25SrilligBranch:		itohy-usb1
3151.9SrilligDescription:	USB stack overhaul, mostly DMA related
3161.9SrilligStatus:		Active
3171.9SrilligStart Date:	22 May 2007
3181.9SrilligEnd Date:
3191.9SrilligBase Tag:	itohy-usb1-base
3201.9SrilligMaintainer:	ITOH Yasufumi <itohy@NetBSD.org>
3211.9SrilligScope:		kernel
3221.9SrilligNotes:		To check out the kernel source tree,
3231.9Srillig		1. check out checkout script
3241.9Srillig			cvs checkout -ritohy-usb1 src/sys/dev/usb/filelist
3251.9Srillig		2. update files in the branch
3261.9Srillig			sh -e src/sys/dev/usb/filelist
3271.9Srillig
3281.9SrilligBranch:		kame
3291.10SrilligDescription:	KAME Project
3301.9SrilligStatus:		Dormant
3311.9SrilligStart Date:	28 Jun 1999
3321.21SrilligEnd Date:
3331.21SrilligBase Tag:
3341.10SrilligMaintainer:	Jun-ichiro itojun Hagino <itojun@NetBSD.org>
3351.9SrilligScope:		kernel
3361.9SrilligNotes:		http://www.kame.net
3371.9Srillig		Used for "reference" purposes for early part of KAME
3381.9Srillig		integration effort.  The branch is not actively used, as I
3391.9Srillig		(itojun) use patch(1) and diff(1) for the KAME syncs.
3401.9Srillig
3411.9SrilligBranch:		keiichi-mipv6
3421.9SrilligDescription:	Developing Mobile IPv6 function
3431.9SrilligStatus:		Active
3441.9SrilligStart Date:	21 Feb 2008
3451.9SrilligEnd Date:	
3461.9SrilligBase Tag:	keiichi-mipv6-base
3471.9SrilligMaintainer:	Keiichi Shima <keiichi@netbsd.org>
3481.9SrilligScope:		sys, sbin, libc/net, distrib/sets, share/man/
3491.9SrilligNotes:		http://www.mobileip.jp/
3501.9Srillig		Work on developing Mobile IPv6/NEMO BS functions and
3511.9Srillig		related MIPv6 based advanced functions on NetBSD.
3521.9Srillig		Please consult keiichi for joining this activity.
3531.9Srillig
3541.9SrilligBranch:		kent-audio2
3551.9SrilligDescription:	In-kernel audio mixer
3561.9SrilligStatus:		Active
3571.9SrilligStart Date:	Sun Jan 16 2005
3581.9SrilligEnd Date:	
3591.9SrilligBase Tag:	kent-audio2-base
3601.9SrilligMaintainer:	TAMURA Kent <kent@NetBSD.org>
3611.9SrilligScope:		kernel (audio device drivers)
3621.9SrilligNotes:		http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html
3631.9Srillig		Please consult with the maintainer before committing
3641.14Srillig		to this branch.
3651.14Srillig		This branch is not expected to be compilable yet.
3661.14Srillig
3671.14SrilligBranch:		matt-timespec
3681.14SrilligDescription:	Convert the kernel to struct timespec as its primary time
3691.9Srillig		storage mechanism.
3701.39SrilligStatus:		Inactive
3711.42SrilligStart Date:	2005-02-19
3721.42SrilligEnd Date:
3731.42SrilligBase Tag:	
3741.9SrilligMaintainer:	Matt Thomas <matt@NetBSD.org>
3751.9SrilligScope:		kernel
3761.9SrilligNotes:	
3771.42Srillig
3781.9SrilligBranch:		matt-mips64
3791.9SrilligDescription:	Rototill the mips code to support LP64 mips and N32/N64 ABIs
3801.9SrilligStatus:		Active
3811.14SrilligStart Date:	2007-07-17
3821.9SrilligEnd Date:
3831.14SrilligBase Tag:	matt-mips64-base
3841.14SrilligMaintainer:	Matt Thomas <matt@NetBSD.org>
3851.42SrilligScope:		kernel & userland
3861.14SrilligNotes:	
3871.14Srillig
3881.9SrilligBranch:		matt-armv6
3891.9SrilligDescription:	Rototill the arm code to support features present in the
3901.12Srillig		v6 of the ARM Architecture.  Additionally, clean up things
3911.12Srillig		along the way to use common practices.
3921.9SrilligStatus:		Active
3931.10SrilligStart Date:	2007-08-27
3941.10SrilligEnd Date:
3951.10SrilligBase Tag:	matt-armv6-base
3961.43SrilligMaintainer:	Matt Thomas <matt@NetBSD.org>
3971.43SrilligScope:		kernel & userland
3981.10SrilligNotes:	
3991.10Srillig
4001.10SrilligBranch:		mjf-devfs2
4011.40SrilligDescription:	device file system supporting dynamic device nodes
4021.40SrilligStatus:		Active
4031.40SrilligStart Date:	21 February 2008
4041.40SrilligEnd Date:
4051.40SrilligBase Tag:	mjf-devfs2-base
4061.40SrilligMaintainer:	Matt Fleming <mjf@NetBSD.org>
4071.40SrilligScope:		kernel and userland
4081.40SrilligNotes:		This branch will move away from the static device nodes that
4091.40Srillig		are created with MAKEDEV scripts and allow nodes to be created
4101.40Srillig		and removed dynamically as devices are attached and detached
4111.40Srillig		from the machine.
4121.40Srillig
4131.40SrilligBranch:		mjf-ufs-trans
4141.40SrilligDescription:	file system transactions for ufs
4151.10SrilligStatus:		Active
4161.40SrilligStart Date:	12 March 2007
4171.40SrilligEnd Date:
4181.46SrilligBase Tag:	mjf-ufs-trans-base
4191.46SrilligMaintainer:	Matt Fleming <mjf@NetBSD.org>
4201.40SrilligScope:		kernel
4211.44SrilligNotes:
4221.40Srillig
4231.40SrilligBranch:		nick-net80211-sync
4241.40SrilligDescription:	sync of net80211 with FreeBSD
4251.40SrilligStatus:		Active
4261.40SrilligStart Date:	21 February 2008
4271.40SrilligEnd Date:
4281.40SrilligBase Tag:	nick-net80211-base
4291.40SrilligMaintainer:	Nick Hudson <skrll@NetBSD.org>
4301.40SrilligScope:		sys/
4311.40SrilligNotes:		Sync'ing net80211 with FreeBSD and drivers update. The branch is
4321.40Srillig		currently only the kernel, but will likely extend to some userland
4331.40Srillig		areas.
4341.40Srillig
4351.40SrilligBranch:	  	pkgviews
4361.40SrilligDescription:  	package views, enabling multiple conflicting packages to co-exist
4371.40SrilligStatus:		Active
4381.40SrilligStart Date:	22 July 2002
4391.10SrilligEnd Date:
4401.10SrilligBase Tag:	pkgviews
4411.40SrilligMaintainer:	Alistair Crooks <agc@NetBSD.org>
4421.41SrilligScope:		pkgsrc, basesrc/usr.sbin/pkg_install
4431.40SrilligNotes:		A more flexible infrastructure for third-party packages by
4441.40Srillig		allowing multiple conflicting packages and versions to co-exist
4451.40Srillig		within the same tree
4461.10Srillig
4471.23SrilligBranch:		rpaulo-netinet-merge-pcb
4481.9SrilligDescription:	merge in6pcb with inpcb
4491.43SrilligStatus:		Dormant
4501.10SrilligStart Date:	Wed Feb 01 2006
4511.43SrilligEnd Date:	
4521.43SrilligBase Tag:	rpaulo-netinet-merge-pcb-base
4531.43SrilligMaintainer:	Rui Paulo <rpaulo@NetBSD.org>
4541.43SrilligScope:		src/sys
4551.43SrilligNotes:		No longer active due to the lack of time. If you plan to
4561.43Srillig		continue this branch, sys/netinet/in_pcb.h already contains
4571.43Srillig		the proposed structure layout (which was roughly discussed
4581.43Srillig		in the tech-net mailing list).
4591.43Srillig		I also defined INP_*() macros to mimicate FreeBSD's inpcb
4601.10Srillig		locking style, but currently they do nothing and are not
4611.43Srillig		yet called at the correct places (needs discussion about
4621.9Srillig		kernel fine-grained locking).
4631.1Srillig		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
477Branch:		rtr-xorg-branch
478Description:	xorg & static build alterations to src/x11
479Status:		Active
480Start Date:	Nov 15 2004
481End Date:	
482Base tag:	rtr-xorg-branch-base
483Maintainer:	Tyler R. Retzlaff <rtr@NetBSD.org>
484Scope:		x11
485		distrib/sets/lists
486		share/mk/bsd.x11.mk
487		share/mk/bsd.own.mk
488		etc/mtree/NetBSD.dist
489Notes:		Requires parts of xsrc/xfree (HEAD)
490		xsrc/local, xsrc/xfree/xc/programs/Xserver/hw/netbsd
491		Requires xorg (XORG-6_8_1)
492
493Branch:  	wrstuden-fixsa
494Description:	Fix a number of issues present with Scheduler Activations.
495Status: 	Active
496Start Date:	15 May 2007
497End Date:
498Base Tag:	wrstuden-fixsa-base
499Maintainer:	Bill Stouder-Studenmund <wrstuden@NetBSD.org>
500Scope:		src, though all the interesting stuff is in the kernel
501		or lib/libpthread or maybe gdb.
502Notes:		This branch is based off of the netbsd-4 branch!
503		This branch is intended to stage improvements for the
504		Scheduler Activations system for NetBSD 4. Improvements
505		include not allocating memory while preparing to tsleep(),
506		reducing inappropriate upcall delivery (hopefully also
507		eliminating the need to mlock stacks), and being
508		able to pthread_kill() running threads. At this date,
509		most goals have been achieved. This branch also includes
510		fixes to gdb to support working with threaded apps.
511
512Branch:  	wrstuden-revivesa
513Description:	Fix a number of issues present with Scheduler Activations.
514Status: 	Active
515Start Date:	10 May 2008
516End Date:
517Base Tag:	wrstuden-revivesa-base
518Maintainer:	Bill Stouder-Studenmund <wrstuden@NetBSD.org>
519Scope:		src, though all the interesting stuff is in the kernel
520Notes:		This branch is intended to revive Scheduler Activations
521		in -current in the 5.0 era. This branch's main goal is
522		to re-add syscall compatability so that SA-based libpthread
523		programs can run with a -current kernel. 1:1 threading will
524		remain the NetBSD-default. This branch will re-add necessary
525		upcall support, and will also serve as a chance to clean
526		out cruft that had accumulated in the implementation over
527		time.
528
529Branch:		yamt-kmem
530Description:	
531		- separate kernel va allocation from kernel fault handling.
532		- make kmem_alloc interrupt-safe.
533Status:		Active
534Start Date:	Sun Dec  9 2007
535End Date:	
536Base Tag:	yamt-kmem-base3
537Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
538Scope:		src/sys  (src/common is tagged but not branched)
539Notes:		
540		todo:
541		- investigate if PMAP_PREFER equivalent can be done
542		  with vmem_xalloc.  find a tester with hardware for it.
543		- g/c replaced code, including kmapent and malloc.
544		- consider to remove other submaps.  eg. mb_map
545
546Branch:		yamt-nfs-mp
547Description:	make nfs client mp-safe
548Status:		Active
549Start Date:	Sun Apr 27 2008
550End Date:	
551Base Tag:	yamt-nfs-mp-base2
552Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
553Scope:		src/sys  (src/common is tagged but not branched)
554Notes:		
555
556Branch:		yamt-pf42
557Description:	import newer pf from OpenBSD 4.2
558Status:		Active
559Start Date:	Sat Apr 19 2008
560End Date:	
561Base Tag:	yamt-pf42-base4
562Maintainer:	Peter Postma <peter@NetBSD.org>,
563		YAMAMOTO Takashi <yamt@NetBSD.org>
564Scope:		src
565Notes:		see sys/dist/pf/net/TODO
566
567Branch:		reinoud-bufcleanup
568Description:	implement and evaluate struct buf usage cleanup strategies.
569		Ideas currently in mind (preference for b):
570		a)
571			1. use of bio_ops per buffer.
572			2. allow chaining/overloading of functions in bio_ops
573			   and provide some private context.
574			3. extend the bio_ops with commonly used functionality
575			   like pending action counting, custom context passing,
576			   last minute processing of buffer data, buffer cache
577			   etc.
578			4. investigate the use of the kcont()
579			   continuation-passing framework for async io
580			   completion notification for bufs
581			...
582		b)
583			1. all sequencing use of B_CALL replaced by
584			   device-threads, if possible generic code around BUFQ
585			2. possibly use kcont() for async IO finished signaling
586			3. counter of pending and queued actions requestable
587			   by IOCTL interface?
588			4. implement `last minute buffer fixup' calls and maybe
589			   even finished I/O calls as vnode operations
590			...
591Status:		Active
592Start Date:	Thu Mar 15 2007
593End Date:
594Base Tag:	reinoud-bufcleanup-base
595Maintainer:	Reinoud Zandijk <reinoud@NetBSD.org>
596Scope:		src/sys and src/common
597Notes:		Used as experiment sandbox and if successful hopefully one day
598		to be integrated.
599
600Branch:		simonb-wapbl
601Description:	Wasabi's journaling filesystem support
602Status:		Active
603Start Date:	Tue Jun 10 2008
604End Date:
605Base Tag:	simonb-wapbl-base
606Maintainer:	Simon Burge <simonb@NetBSD.org>
607Scope:		distrib/sets/lists/comp distrib/utils/sysinst include
608		sbin/fsck_ffs sbin/fsdb sbin/mount_ffs src/sys
609Notes:		Still has a number of issues:
610		 - Can't log the root filesystem (or any FS if /dev isn't an
611		   ffs) or update existing mounts from non-logged to logged.
612		   See kern/38057 - a fix for the PR has been committed but
613		   at this stage it doesn't play well with WAPBL.
614		 - Log must currently live at end of partition.
615		 - No log locators.
616		 - Some heavy workload performance issues on SMP machines.
617		 - Some stability issues on SMP machines.
618
619Branch:		thorpej-atomic
620Description:	Implementation of an atomic memory operations API modeled
621		after the one in Solaris 10.
622Status:		Active
623Start Date:	Apr 11 2007
624End Date:
625Base tag:	thorpej-atomic-base
626Maintainer:	Jason Thorpe <thorpej@netbsd.org>
627Scope:		src/common
628		src/sys
629Notes:		Base atomic primitives need to be implemented for
630		all of the supported architectures:
631
632		alpha		DONE
633		arm		DONE
634		hppa
635		i386		DONE
636		ia64
637		m68k		DONE (except for 68010)
638		mips
639		ns32k
640		powerpc		DONE except for membar_*()
641		powerpc64	DONE except for membar_*()
642		sh3
643		sparc		DONE except for membar_*()
644		sparc64		DONE except for membar_*()
645		vax
646		x86_64		DONE
647
648		Tested:
649
650		alpha		NO
651		arm		NO
652		hppa		NO
653		i386		NO
654		ia64		NO
655		m68k		NO
656		mips		NO
657		ns32k		NO
658		powerpc		NO
659		powerpc64	NO
660		sh3		NO
661		sparc		NO
662		sparc64		NO
663		vax		NO
664		x86_64		NO
665
666		TODO:
667
668		all		- Need to replace mb_*() with membar_*().
669
670				- Audit MUTEX_CAS() and RWLOCK_CAS() uses
671				  to see of membar_enter() is required here.
672
673				- Talk to ad@ -- figure out of non-atomic
674				  mutex / rwlock release is actually safe.
675
676		arm		- Consider using a RAS technique like
677				  MIPS uses for _lock_cas() and the mutex
678				  stubs.  Possibly do more than one atomic
679				  op as a RAS.  Possibly implement mutex
680				  stubs using the technique.
681
682		m68k		- Need to do 68010 support.
683		
684		i386		- Need to change when x86_patch() is called
685				  so we can test ncpus.
686
687		powerpc		- Figure out if we need barriers in the
688				  atomic ops themselves (hopefully not!)
689
690		x86_64		- Need to change when x86_patch() is called
691				  so we can test ncpus.
692
693########################################################################
694# Individual developers' branches (Terminated):
695########################################################################
696
697Branch:		bouyer-scsipi
698Description:	Integration of atapi support
699Status:		Terminated
700Start Date:
701End Date:
702Base Tag:
703Maintainer:	Manuel Bouyer <bouyer@NetBSD.org>
704Scope:		kernel
705Notes:		Superseded by thorpej_scsipi
706
707Branch:		bouyer-xen2
708Description:	update xen port to xen 2.0, with support for domain0 operations
709Status:		Terminated
710Start Date:	Dec 13 2004
711End Date:	Mar 10 2005
712Base Tag:	netbsd-2-base
713Maintainer:	Manuel Bouyer <bouyer@NetBSD.org>
714Scope:		src/sys/arch/xen
715Notes:
716
717Branch:		bouyer-xenamd64
718Description:	add amd64 support to Xen and rework some parts to share more code between Xen and others
719Status:		Terminated
720Start Date:	18 Oct 2007
721End Date:	22 Nov 2007
722Base Tag:	bouyer-xenamd64-base
723Maintainer:	Manuel Bouyer <bouyer@NetBSD.org>
724Scope:		kernel
725Notes:		
726
727Branch:		bouyer-xeni386
728Description:	switch xen on i386 to the x86 pmap and the xen/x86/x86_xpmap.c bootstrap, and add i386 PAE support
729Status:		Terminated
730Start Date:	10 Dec 2007
731End Date:	23 Jan 2008
732Base Tag:	bouyer-xeni386-base
733Maintainer:	Manuel Bouyer <bouyer@NetBSD.org>
734Scope:		kernel
735Notes:		
736
737Branch: 	chap-midi
738Description:	Renovation of MIDI support
739Status: 	Terminated; merged to -current
740Start Date:	19 May 2006
741End Date:	30 Jun 2006
742Base Tag:	chap-midi-base
743Maintainer:	Chapman Flack <chap@NetBSD.org>
744Scope:		sys, share/man, usr.bin
745Notes:
746
747Branch:		chs-ubc
748Description:	Unified Buffer Cache
749Status:		Terminated
750Start Date:
751End Date:
752Base Tag:	chs-ubc-base
753Maintainer:	Chuck Silvers <chs@NetBSD.org>
754Scope:		kernel
755Notes:
756
757Branch:		chs-ubc2
758Description:	 Unified Buffer Cache
759Status:		Terminated; merged to -current
760Start Date:
761End Date:
762Base Tag:	chs-ubc2-base, chs-ubc2-newbase
763Maintainer:	Chuck Silvers <chs@NetBSD.org>
764Scope:		kernel
765Notes:
766
767Branch:		cjs-build-against-obj-dir
768Description:	?
769Status:		?
770Start Date:
771End Date:
772Base Tag:
773Maintainer:	Curt Sampson <cjs@NetBSD.org>
774Scope:		Entire tree.
775Notes:
776
777Branch:		eeh-paddr_t
778Description:	use separate types for virtual vs. physical addresses
779Status:		Terminated; merged to -current
780Start Date:
781End Date:
782Base Tag:	eeh-paddr_t-base
783Maintainer:	Eduardo Horvath <eeh@NetBSD.org>
784Scope:		kernel
785Notes:		This is needed to support 32-bit kernels on sparc64.
786
787Branch:		elad-kernelauth
788Description:	Native NetBSD implementation of Apple's kernel authorization
789		based on TN2127. This is a "clean-room" implementation to
790		avoid any licensing issues.
791Status:		Terminated; merged to -current
792Start Date:	Tue Mar	 7 2006
793End Date:	Mon May 15 2006
794Base Tag:	elad-kernelauth-base
795Maintainer:	Elad Efrat <elad@NetBSD.org>
796Scope:		src/sys, src/share/man/man9/Makefile,
797		src/share/man/man9/kauth.h, src/distrib/sets/lists/comp/mi
798Notes:
799
800Branch:		fvdl-softdep
801Description:	FFS soft dependencies
802Status:		Terminated; merged to -current
803Start Date:
804End Date:
805Base Tag:	fvdl-softdep-base
806Maintainer:	Frank van der Linden <fvdl@NetBSD.org>
807Scope:		kernel
808Notes:
809
810Branch:		gehenna-devsw
811Description:	auto-generation of devsw table
812Status:		Terminated
813Start Date:	16 May 2002
814End Date:	6 Sep 2002
815Base Tag:	gehenna-devsw-base
816Maintainer:	MAEKAWA Masahide <gehenna@NetBSD.org>
817Scope:		syssrc
818Notes:		The goal is to get rid of the existing device switch tables in
819		port-dependent conf.c and to generate them dynamically by
820		config(8).
821
822Branch:		is-newarp
823Description:	ARP for non-Ethernet
824Status:		Terminated; merged before NetBSD 1.3
825Start Date:	1996/10/13
826End Date:	1997/03/15
827Base Tag:	is-newarp-base
828Maintainer:	Ignatios Souvatzis <is@NetBSD.org>
829Scope:		kernel
830Notes:
831
832Branch:		jmcneill-pm
833Description:	Power management framework overhaul, ACPI improvements
834Status:		Terminated; merged before NetBSD 5.0
835Start Date:	3 Aug 2007
836End Date:	9 Dec 2007
837Base Tag:	jmcneill-pm-base
838Maintainer:	Jared D. McNeill <jmcneill@NetBSD.org>
839Scope:		kernel
840Notes:		
841
842Branch:		kenh-if-detach
843Description:	Interface detach support.
844Status:		?
845Start Date:
846End Date:
847Base Tag:	kenh-if-detach-base
848Maintainer:	Ken Hornstein <kenh@NetBSD.org>
849Scope:		kernel
850Notes:
851
852Branch:		kent-audio1
853Description:	Audio converter pipeline
854Status:		Terminated; merged to -current
855Start Date:	Tue Dec  7 2004
856End Date:	Tue Jan 11 2005
857Base Tag:	kent-audio1-base
858Maintainer:	TAMURA Kent <kent@NetBSD.org>
859Scope:		kernel (audio device drivers)
860Notes:		http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html
861		Please consult with the maintainer before committing
862		to this branch.
863
864Branch:		kqueue
865Description:	kqueue kernel event notification mechanism (from FreeBSD)
866Status:		Terminated; merged to -current
867Start Date:	Tue Jul 10 23:08:38 EST 2001
868End Date:	Tue Oct 24 09:14:14 GMT 2002
869Base Tag:	kqueue-base
870Maintainer:	Jaromir Dolecek <jdolecek@NetBSD.org>
871Scope:		kernel, libc/sys, share/man/man9, usr.bin/fstat
872Notes:		Integration of FreeBSD's kqueue(2) mechanism, with various
873		local internal changes to better suit NetBSD, and
874		enhancements such as looking up filters by name or
875		number, and dynamic registration of "user" filters.
876		The work is complete as is, but is awaiting more
877		feedback from various kernel gurus before going mainline.
878
879Branch:		ktrace-lwp
880Description:	ktrace support for lwp ids.
881Status:		Terminated; merged to -current
882Start Date:	Wed Jul  2 15:27:30 UTC 2003
883End Date:	Sun Dec 11 12:25:29 UTC 2005
884Base Tag:	ktrace-lwp-base
885Maintainer:	Darren Reed <darrenr@NetBSD.org>
886Scope:		sys
887Notes:		
888
889Branch:		marc-pcmcia
890Description:	PCMCIA support
891Status:		Terminated; merged to -current
892Start Date:
893End Date:
894Base Tag:	marc-pcmcia-base, marc-pcmcia-bp
895Maintainer:	Marc Horowitz <marc@NetBSD.org>
896Scope:		kernel
897Notes:
898
899Branch:		minoura_x68k_bus_h
900Description:	bus_space(9) and bus_dma(9) implementation for x68k
901Status:		Terminated; merged to -current
902Start Date:	23 Dec 1998
903End Date:	16 Mar 1999
904Base Tag:	minoura_x68k_bus_h-base
905Maintainer:	Minoura Makoto <minoura@NetBSD.org>
906Scope:		sys/arch/x68k
907Notes:
908
909Branch:		minoura-xpg4dl
910Description:	Citrus Project locale subsystem
911Status:		Terminated; (partly) merged to -current
912Start Date:	28 March 2000
913End Date:
914Base Tag:	minoura-xpg4dl-base
915Maintainer:	Minoura Makoto <minoura@NetBSD.org>
916Scope:		basesrc, syssrc, sharesrc
917Notes:		Citrus Project is developing dynamically-loadable, codeset-
918		independent locale subsystem.  Part of the implementation
919		(LC_CTYPE) called XPG4DL is now integrated to -current.
920
921Branch:		mjf-devfs
922Description:	device file system supporting dynamic device nodes
923Status:		Terminated
924Start Date:	12 November 2007
925End Date:	21 February 2008
926Base Tag:	mjf-devfs-base
927Maintainer:	Matt Fleming <mjf@NetBSD.org>
928Scope:		kernel and userland
929Notes:		This branch will move away from the static device nodes that
930		are created with MAKEDEV scripts and allow nodes to be created
931		and removed dynamically as devices are attached and detached
932		from the machine.
933
934Branch:		mrg-vm-swap
935Description:	dynamic swap allocation, swap-to-files support
936Status:		Terminated; abandoned for mrg-vm-swap2
937Start Date:	12 February 1997
938End Date:	15 March 1997
939Base Tag:	[none]
940Maintainer:	Matthew R. Green <mrg@NetBSD.org>
941Scope:		kernel
942Notes:
943
944Branch:		mrg-vm-swap2
945Description:	dynamic swap allocation, swap-to-files support
946Status:		Terminated; merged to -current
947Start Date:	4 May 1997
948End Date:	12 June 1997
949Base Tag:	mrg-vm-swap2-base
950Maintainer:	Matthew R. Green <mrg@NetBSD.org>
951Scope:		kernel
952Notes:
953
954Branch:		nathanw_sa
955Description:	Scheduler activations
956Status:		Terminated; merged to -current
957Start Date:	5 March 2001
958End Date:	18 January 2003
959Base Tag:	nathanw_sa_base
960Maintainer:	Nathan Williams <nathanw@NetBSD.org>
961Scope:		kernel, libc, libkvm, libpthread, libpthread_dbg, include, 
962		bin/ps usr.bin/systat usr.bin/top usr.bin/w
963		gnu/dist/toolchain/gdb gnu/usr.bin/gdb
964Notes:		The idea of scheduler activations is described in the
965		classic paper by Anderson et al., in ACM Transactions
966		a on Computer Systems volume 10 issue 1 (1992),which
967		can be found at
968		http://www.acm.org/pubs/citations/journals/tocs/1992-10-1/p53-anderson/
969		Many ideas in the implementation are based on the
970		implementation of scheduler activations added to Mach
971		3.0 and described by Davis et al. in the University of
972		Washington CS tech report 92-08-93, which can be found
973		at
974		ftp://ftp.cs.washington.edu/tr/1992/08/UW-CSE-92-08-03.PS.Z
975
976		My USENIX paper on the subject can be found at
977		http://web.mit.edu/nathanw/www/usenix/
978
979		Please consult with the maintainer before committing
980		to this branch.
981		Other tags starting with nathanw_sa reserved for
982		branch management and are not guaranteed to be stable.
983
984		Trunk tagged with "nathanw_sa_before_merge" prior to
985		merging branch down to trunk.  Branch tagged with
986		"nathanw_sa_end" to indicate the ending revision of
987		the branch.
988
989Branch:		newlock
990Description:	New locking primitives, based on Solaris's
991Status:		Terminated
992Start Date:	March 9, 2002
993End Date:	February 12, 2007
994Base Tag:	newlock-base
995Maintainer:	Jason R. Thorpe <thorpej@NetBSD.org>
996Scope:		Kernel
997Notes:		The goal is to replace the existing lockmgr() and
998		simple_lock() based locking mechanisms with the
999		primitives found in Solaris: mutexes and rwlocks.
1000		Superseded by the newlock2 branch.
1001
1002Branch:		newlock2
1003Description:	New locking primitives, based on Solaris's
1004Status:		Terminated
1005Start Date:	September 9, 2006
1006End Date:	February 12, 2007
1007Base Tag:	newlock2-base
1008Maintainer:	Andrew Doran <ad@NetBSD.org>
1009Scope:		Kernel
1010Notes:		As per the newlock branch, however given the amount of time
1011		the original branch has lain dormant, a new one has been
1012		created.  Goals:
1013		- Implement new locking primitives on most-used ports.
1014		- Minor locking improvements.
1015		- Remove spinlockmgr().
1016
1017Branch:		nick-csl-alignment
1018Description:	Provide correctly aligned __cpu_simple_lock_t for hppa
1019Status:		Terminated
1020Start Date:	2007-07-18
1021End Date:
1022Base Tag:	nick-csl-alignment-base5
1023Maintainer:	Nick Hudson <skrll@NetBSD.org>
1024Scope:		sys, lib/libpthread, lib/libpthread_dbg
1025Notes:	
1026
1027Branch:		perseant-lfsv2
1028Description:	LFS incompatible on-disk data structure changes
1029Status:		Terminated
1030Start Date:	27 June 2001
1031End Date:	16 July 2001
1032Base Tag:	perseant-lfsv2-base
1033Maintainer:	Konrad Schroder <perseant@NetBSD.org>
1034Scope:		basesrc/{sbin/*lfs,libexec/lfs_cleanerd,usr.sbin/dumplfs}, syssrc/sys/ufs
1035Notes:		This branch should be short-lived, I expect to merge as soon
1036		as the data structures required for unremove are in and tested.
1037
1038Branch:		ppcoea-renovation
1039Description:	General renovation and cleanup of all OEA PowerPC ports.
1040Status:		Terminated; merged to -current
1041Start Date:	30 April 2007
1042End Date:	15 October 2007
1043Base Tag:	ppcoea-renovation-base
1044Maintainer:	Tim Rightnour <garbled@netbsd.org>
1045Scope:		src/sys/arch
1046Notes:		This branch is for a general cleanup of all OEA-based PowerPC
1047		ports. OEA (Operating Environment Architecture) PowerPC refers
1048		to the 601, 603, 604, and similar chips.  Specifically, not the
1049		403/401 and other embedded chips. The general concept is to get
1050		them all compiling, and sharing as much code as possible.  All
1051		developers are welcome to commit to this branch.
1052
1053Branch:		thorpej-devvp
1054Description:	replace dev_t with struct vnode * in devsw entry points
1055Status:		Terminated
1056Start Date:	Sep 6 2001
1057End Date:	???
1058Base Tag:	thorpej-devvp-base
1059Maintainer:	Jason Thorpe <thorpej@NetBSD.org>
1060Scope:		syssrc
1061Notes:		Kernels built from this branch are not expected
1062		to function correctly at this time.
1063
1064		Ports known to compile on this branch:
1065			alpha
1066			i386
1067
1068Branch:		peter-altq
1069Description:	New ALTQ framework:
1070		- sync with KAME sources
1071		- share mtag/name mapping functions
1072		- separate altq + pf attachment
1073Status:		Terminated; merged to -current
1074Start Date:	March 16, 2006
1075End Date:	October 12, 2006
1076Base Tag:	peter-altq-base
1077Maintainer:	Peter Postma <peter@NetBSD.org>,
1078		Martin Husemann <martin@NetBSD.org>,
1079		Matthias Scheler <tron@NetBSD.org>
1080Scope:		dist/pf dist/ipf distrib/sets/lists sys usr.sbin/altq
1081Notes:		Only the first item in the description was finished
1082		in this branch.
1083
1084Branch:		sommerfeld_i386mp_1
1085Description:	Multiprocessor support for i386 using Intel MP BIOS.
1086Status:		Terminated; merged to -current
1087Start Date:	21 Feb 2000
1088End Date:	01 Oct 2002
1089Base Tag:	sommerfeld_i386mpbase_1
1090Maintainer:	Bill Sommerfeld <sommerfeld@NetBSD.org>
1091Scope:		sys/arch/i386
1092Notes:
1093		Code committed to the branch has booted to multiuser 
1094		on at least one system.
1095
1096		Not guaranteed to compile against mainline since -current
1097		may have changed incompatibly with the last branch update;
1098		use "cvs update -D" to roll-back the rest of the tree to match.
1099
1100		Please get explicit permission from the maintainer 
1101		before each commit, or your changes will be backed out.
1102		Other tags starting with sommerfeld_ are private to 
1103		the developer and are guaranteed to be unstable.
1104		Only the maintainer should move tags.
1105
1106		Note that this branch uses a DIFFERENT scheme for 
1107		syncing with the mainline.  the maintainer uses some private
1108		scripts for keeping them in sync; if you make commits 
1109		to the branch to "resynchronize" things, you'll
1110		probably do it wrong; instead, ask the maintainer to
1111		resynchronize things.
1112
1113		See sys/arch/i386/TODO on the branch for a list of known
1114		issues with the branch.
1115
1116Branch:		thorpej-mips-cache
1117Description:	overhaul MIPS cache support code
1118Status:		Terminated; merged to -current
1119Start Date:	Oct 23 2001
1120End Date:	Nov 14 2001
1121Base Tag:	thorpej-mips-cache-base
1122Scope:		syssrc
1123Notes:		This branch needs more debugging, testing, and more
1124		ports need to be converted to the new world order.
1125
1126		The following processors have had cache ops
1127		written:
1128
1129			* R2000/R3000 (cache_r3k) -- light testing,
1130			  needs to be beat on a lot more to make
1131			  sure it's working.
1132
1133			* R4000/R4400 (cache_r4k) -- mhitch@NetBSD.org
1134			  tracked down a bug, which has been fixed.
1135
1136			  Confirmed working on R4000-with-L2.
1137
1138			  Confirmed working on R4400-no-L2 and
1139			  R4400-with-L2.
1140
1141			* R4600/R5000 (cache_r5k) -- shin@NetBSD.org
1142			  has committed fixes to this code.
1143
1144			  Confirmed working on R4600 v2 (SGI IP-22 with
1145			  no SysAD L2 cache).
1146
1147			  Confirmed working on RM5260 (Algorithmics P-5064).
1148
1149			* TX39 (cache_tx39) -- uch@NetBSD.org has
1150			  committed fixes to this code.  Awaiting
1151			  confirmation that it is working properly.
1152
1153			* R5900 (cache_r5900) -- uch@NetBSD.org has
1154			  written this code and tested it on a
1155			  PlayStation 2.
1156
1157		The following ports have been updated to compile (and
1158		use optimized-for-processor bus_dma routines).  Those
1159		that have been tested and work are marked with [WORKING].
1160
1161			* algor		[WORKING]
1162
1163			* arc		[WORKING]
1164
1165			* pmax		[WORKING]
1166
1167			* playstation2	[WORKING]
1168					Needs optimized bus_dmamap_sync().
1169
1170			* hpcmips	[need verification that this is working]
1171					Needs optimized bus_dmamap_sync().
1172
1173			* sgimips	[WORKING]
1174					Needs optimized bus_dmamap_sync().
1175
1176			* cobalt	[need testing]
1177
1178			* mipsco	[need testing]
1179
1180			* newsmips	[need testing]
1181
1182Branch:		thorpej_scsipi
1183Description:	SCSI/ATAPI midlayer rewrite.
1184Status:		Terminated; merged to -current
1185Start Date:
1186End Date:	Apr 25 2001
1187Base Tag:	thorpej_scsipi_base, thorpej_scsipi_nbase
1188Maintainer:	Manuel Bouyer <bouyer@NetBSD.org>,
1189		Jason Thorpe <thorpej@NetBSD.org>
1190Scope:		syssrc
1191Notes:		When a change from -current is pulled up please move the
1192		thorpej_scsipi_base tag to the revision you're syncing with.
1193		thorpej_scsipi_nbase is private to maintainer (only
1194		used when syncing the whole branch with HEAD).
1195		Just before the merge, syssrc has been tagged with
1196		thorpej_scsipi_beforemerge
1197
1198Branch:		thorpej-signal
1199Description:	?
1200Status:		?
1201Start Date:
1202End Date:
1203Base Tag:	thorpej-signal-base
1204Maintainer:	Jason Thorpe <thorpej@NetBSD.org>
1205Scope:		kernel
1206Notes:
1207
1208Branch:		thorpej-setroot
1209Description:	?
1210Status:		Terminated; merged to -current
1211Start Date:
1212End Date:
1213Base Tag:
1214Maintainer:	Jason Thorpe <thorpej@NetBSD.org>
1215Scope:		kernel
1216Notes:
1217
1218Branch:		simonb-timecounters
1219Description:	Port FreeBSD timecounters to NetBSD
1220Status:		Terminated
1221Start Date:	Sat Feb 04 2006
1222End Date:	Wed Jun 07 2006
1223Base Tag:	simonb-timecounters-base
1224Maintainer:	Simon Burge <simonb@NetBSD.org>,
1225		Frank Kardel <kardel@NetBSD.org>
1226Scope:		sys, sbin/savecore, usr.bin/vmstat, usr.sbin/ntp
1227Notes:		early (partial conversion) commit to -current
1228		ok'ed by core@ on 20060605 for testing and further
1229		simplified conversion
1230
1231Branch:		vmlocking
1232Description:	Make VM and file system framework MP safe
1233Status:		Terminated
1234Start Date:	13 March 2007
1235End Date:	4 December 2007
1236Base Tag:	vmlocking-base
1237Maintainer:	Andrew Doran <ad@NetBSD.org>
1238Scope:		kernel
1239Notes:		Superseded by vmlocking2 branch.
1240
1241Branch:		vmlocking2
1242Description:	Make VM and file system framework MP safe
1243Status:		Terminated
1244Start Date:	4 December 2007
1245End Date:	2 January 2008
1246Base Tag:	vmlocking2-base3
1247Maintainer:	Andrew Doran <ad@NetBSD.org>
1248Scope:		kernel
1249Notes:		Goals:
1250
1251		- Make VM system / trap handling MP safe.
1252		- Replace simplelocks with mutexes.
1253		- Make file system framework MP safe.
1254
1255		Status by architecture:
1256
1257		  alpha		done
1258		  i386		done
1259		  amd64		done
1260		  mips		done
1261		  sparc		need pmap/trap locking changes	
1262		  sparc64	done
1263		  arm		done
1264		  powerpc	done
1265		  hppa		done
1266		  sh3		done
1267		  m68k		done
1268		  xen		need pmap/trap locking changes
1269
1270		Remaining MI work to do:
1271
1272		- Check aliased vnode handling. There may be problems.
1273
1274		Remaining problems:
1275
1276		- LFS stalls due to v_numoutput leak.
1277
1278Branch:		wrstuden-devbsize
1279Description:	Modify buffer cache to deal with different devices having
1280		different block sizes. Also DEV_BSIZE would go away.
1281Status:		Terminated
1282Start Date:	Aug or Sept 1999
1283End Date:	1 Apr 2000
1284Base tag:	wrstuden-devbsize-base
1285Maintainer:	Bill Studenmund <wrstuden@NetBSD.org>
1286Scope:		kernel
1287Notes:		No longer active due to lack of time, and introduction
1288		of UBC. In terms of UBC, the primary cache for
1289		file data is the VM cache, which needs to operate
1290		in terms of VM pages. As no existing device has native
1291		pages the same size as our VM pages, there already is
1292		a mapping going on between the VM system and the
1293		underlying blocks. So it would be easier and cleaner
1294		to adjust that to deal w/ different block sizes.
1295		Also with UBC, all i/o is in terms of bytes at an offset
1296		with a certain length, so the exact block size isn't a big
1297		deal.
1298
1299		Any other wrstuden-devbsize tag may (and should) go away.
1300
1301Branch:		yamt-idlelwp
1302Description:	idle lwp, and some changes depending on it.
1303
1304		1. separate context switching and thread scheduling.
1305		   (cf. gmcgarry_ctxsw)
1306		2. implement idle lwp.
1307		3. clean up related MD/MI interfaces.
1308		4. make scheduler(s) modular.
1309
1310Status:		Terminated; merged to -current
1311Start Date:	Fri Feb 17 2007
1312End Date:	Thu May 17 2007
1313Base Tag:	yamt-idlelwp-base8
1314Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
1315Scope:		src/sys  (src/common is tagged but not branched)
1316Notes:		
1317		Status of ports:
1318		  alpha			[ Done, UP tested, MP not tested ]
1319		  i386			[ Done, tested ]
1320		  amd64			[ Done, tested ]
1321		  mips			[ Done, both MIPS1 and MIPS3 tested]
1322		  sparc			[ Done, UP tested, MP might have
1323					  some problem after newlock2 merge ]
1324		  sparc64		[ Done, tested ]
1325		  arm			[ Done, SA1 tested. See PR 36548 ]
1326		  macppc/powerpc	[ Done, OEA tested ]
1327		  hppa			[ Done, tested ]
1328		  sh3			[ Done, tested ]
1329		  vax			[ Done, UP tested, MP untested ]
1330		  m68k			[ Done, tested on several ports ]
1331		  ns32k			[ broken ]
1332		  ia64			[ broken ]
1333		  pdp10			[ broken ]
1334
1335		How to adapt a port?
1336
1337		- unify cpu_switch, cpu_exit, cpu_switchto into
1338		  a single cpu_switchto.  see cpu_switchto.9.
1339
1340		- implement cpu_idle.  see cpu_idle.9.
1341
1342		- add a flag argument to cpu_need_resched.
1343		  handle RESCHED_IMMED flag, which means "cause a preemption
1344		  as soon as possible."  eg. in the case of MULTIPROCESSOR,
1345		  send an IPI to the target cpu.
1346
1347		- "curlwp == NULL" is not a valid check for idle state anymore.
1348		  use "(curlwp->l_flag & LW_IDLE) != 0" instead.  curlwp is
1349		  almost always non-NULL, with exceptions like early on boot.
1350
1351		- remove idle pcbs.
1352
1353		- (if MULTIPROCESSOR) tweak processor trampoline code.
1354
1355		- (if MULTIPROCESSOR) call mi_cpu_attach when attaching
1356		  secondary processors.
1357
1358		- (if schedhz!=0) call schedclock regardless of the value of
1359		  curlwp.
1360
1361		- of course, update MD users of scheduler/switching API.
1362
1363Branch:		yamt-lazymbuf
1364Description:	change the way to share mbuf external storage so that
1365		it can work without kernel_lock.
1366Status:		Terminated; merged to -current
1367Start Date:	Wed Jul  6 2005
1368End Date:	Mon Mar 24 2008
1369Base Tag:	yamt-lazymbuf-base14
1370Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
1371Scope:		src/sys  (src/common is tagged but not branched)
1372Notes:		
1373
1374Branch:		yamt-km, yamt-km-doc
1375Description:	simplify/improve kernel memory management and bootstrap
1376Status:		Terminated; merged to -current
1377Start Date:	Tue Jan 25 2005
1378End Date:	Fri Apr  1 2005
1379Base Tag:	yamt-km-base{,2,3,4}, yamt-km-doc-base
1380Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
1381Scope:		yamt-km: src/sys
1382		yamt-km-doc: src/share/man/man9/uvm.9
1383Notes:		http://mail-index.NetBSD.org/tech-kern/2004/12/25/0005.html
1384
1385		the followings are per-port status.
1386		(account names mean "tested by".)
1387
1388		works enough to go to multiuser:
1389			alpha, i386, xen (yamt@)
1390			pc532 (simonb@)
1391			alpha, i386, mac68k, macppc, pmax, shark,
1392			    sparc, sparc64, sun3, x68k (chs@)
1393			cobalt, dreamcast, hp300, news68k, newsmips,
1394			    sun3x (tsutsui@)
1395			amiga (mhitch@)
1396			cats, hp700 (skrll@)
1397			xen (bouyer@)
1398
1399		known to have the same problem as trunk:
1400			vax (chs@, stuck while running kvm_mkdb)
1401
1402		known to have a problem:
1403			luna68k (and, if any, other m68k ports which use TTR)
1404			needs to be revisited.
1405			-> for luna68k, although not tested,
1406			   Sysmap has been moved to avoid kva conflict with
1407			   I/O ranges.
1408
1409		buildable:
1410			src/sys/arch/acorn26/conf/GENERIC
1411			src/sys/arch/acorn32/conf/GENERIC
1412			src/sys/arch/algor/conf/P6032
1413			src/sys/arch/alpha/conf/GENERIC
1414			src/sys/arch/alpha/conf/GENERIC.MP
1415			src/sys/arch/amd64/conf/GENERIC
1416			src/sys/arch/amd64/conf/GENERIC.MP
1417			src/sys/arch/amiga/conf/GENERIC
1418			src/sys/arch/arc/conf/GENERIC
1419			src/sys/arch/atari/conf/MILAN-PCIIDE
1420			src/sys/arch/bebox/conf/GENERIC
1421			src/sys/arch/cats/conf/GENERIC
1422			src/sys/arch/cesfic/conf/GENERIC
1423			src/sys/arch/cobalt/conf/GENERIC
1424			src/sys/arch/dreamcast/conf/GENERIC
1425			src/sys/arch/evbarm/conf/TS7200
1426			src/sys/arch/evbppc/conf/WALNUT
1427			src/sys/arch/evbsh3/conf/COMPUTEXEVB
1428			src/sys/arch/evbsh5/conf/CAYMAN64
1429			src/sys/arch/hp300/conf/GENERIC
1430			src/sys/arch/hp700/conf/GENERIC
1431			src/sys/arch/hpcarm/conf/JORNADA728
1432			src/sys/arch/hpcmips/conf/GENERIC
1433			src/sys/arch/hpcsh/conf/GENERIC
1434			src/sys/arch/hpcsh/conf/HPW650PA
1435			src/sys/arch/i386/conf/GENERIC
1436			src/sys/arch/i386/conf/GENERIC.MP
1437			src/sys/arch/i386/conf/XEN0
1438			src/sys/arch/i386/conf/XENU
1439			src/sys/arch/ibmnws/conf/GENERIC
1440			src/sys/arch/iyonix/conf/GENERIC
1441			src/sys/arch/luna68k/conf/GENERIC
1442			src/sys/arch/mac68k/conf/GENERIC
1443			src/sys/arch/macppc/conf/GENERIC
1444			src/sys/arch/macppc/conf/GENERIC.MP
1445			src/sys/arch/mipsco/conf/GENERIC
1446			src/sys/arch/mmeye/conf/GENERIC
1447			src/sys/arch/mvme68k/conf/GENERIC
1448			src/sys/arch/netwinder/conf/GENERIC
1449			src/sys/arch/news68k/conf/GENERIC
1450			src/sys/arch/newsmips/conf/GENERIC
1451			src/sys/arch/next68k/conf/GENERIC
1452			src/sys/arch/ofppc/conf/GENERIC
1453			src/sys/arch/pc532/conf/GENERIC
1454			src/sys/arch/pmax/conf/GENERIC
1455			src/sys/arch/prep/conf/GENERIC
1456			src/sys/arch/sandpoint/conf/GENERIC
1457			src/sys/arch/sbmips/conf/GENERIC
1458			src/sys/arch/sgimips/conf/GENERIC32_IP3x
1459			src/sys/arch/shark/conf/GENERIC
1460			src/sys/arch/sparc/conf/GENERIC
1461			src/sys/arch/sparc/conf/GENERIC.MP
1462			src/sys/arch/sparc64/conf/GENERIC
1463			src/sys/arch/sparc64/conf/GENERIC.MP
1464			src/sys/arch/sun2/conf/GENERIC
1465			src/sys/arch/sun3/conf/GENERIC
1466			src/sys/arch/vax/conf/GENERIC
1467			src/sys/arch/vax/conf/GENERIC.MP
1468			src/sys/arch/x68k/conf/GENERIC
1469
1470			src/sys/arch/playstation2/conf/GENERIC
1471
1472Branch:		yamt-pdpolicy
1473Description:	play with page replacement policy
1474		- separate page replacement policy from the rest of kernel
1475		- implement alternative replacement policy
1476		- related read-ahead adjustment?
1477Status:		Terminated; merged to -current
1478Start Date:	Sun Mar  5 2006
1479End Date:	Sat Sep 16 2006
1480Base Tag:	yamt-pdpolicy-base9
1481Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
1482Scope:		src/sys  (src/common is tagged but not branched)
1483Notes:		
1484
1485Branch:		yamt-readahead
1486Description:	play with file readahead
1487Status:		Terminated; merged to -current
1488Start Date:	Mon Nov 14 2005
1489End Date:	Wed Nov 30 2005
1490Base Tag:	yamt-readahead-base3
1491Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
1492Scope:		src/sys
1493Notes:		
1494
1495Branch:		yamt-uio_vmspace
1496Description:	uio_lwp/uio_segflg -> uio_vmspace
1497Status:		Terminated; merged to -current
1498Start Date:	Mon Dec 31 2005
1499End Date:	Wed Mar  1 2006
1500Base Tag:	yamt-uio_vmspace-base5
1501Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
1502Scope:		src/sys
1503Notes:		
1504
1505Branch:		yamt-splraiseipl
1506Description:	finish implementing splraiseipl (and makeiplcookie).
1507		http://mail-index.NetBSD.org/tech-kern/2006/07/01/0000.html
1508
1509		- completes workqueue(9) and netbt.
1510		- fix PR/33218.
1511
1512Status:		Terminated; merged to -current
1513Start Date:	Mon Sep 18 2006
1514End Date:	Fri Dec 22 2006
1515Base Tag:	yamt-splraiseipl-base5
1516Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
1517Scope:		src/sys  (src/common is tagged but not branched)
1518Notes:		
1519		tested (by who):
1520			alpha		(yamt)
1521			alpha		(pavel)
1522			amd64		(reported privately)
1523			cobalt		(tsutsui)
1524			ews4800mips	(tsutsui)
1525			hp300		(tsutsui)
1526			hpcarm		(reported privately)
1527			i386		(yamt)
1528			macppc		(tsutsui)
1529			news68k		(tsutsui)
1530			sgimips(IP32)	(tsutsui)
1531			sparc(sun4c)	(tsutsui)
1532			sun2		(tsutsui)
1533			sun3		(tsutsui)
1534			sun3x		(tsutsui)
1535			xen		(yamt)
1536
1537		compile-tested:
1538			acorn26
1539			acorn32
1540			algor
1541			amiga
1542			arc
1543			atari
1544			bebox
1545			cats
1546			cesfic
1547			dreamcast
1548			evbarm
1549			evbmips
1550			evbppc(marvell)
1551			evbppc(ibm4xx)
1552			evbsh3
1553			hp700
1554			hpcmips
1555			hpcsh
1556			ia64
1557			ibmnws
1558			iyonix
1559			landisk
1560			luna68k
1561			mac68k
1562			mmeye
1563			mvme68k
1564			mvmeppc
1565			mipsco
1566			netwinder
1567			newsmips
1568			next68k
1569			ofppc
1570			pc532
1571			pmax
1572			pmppc
1573			prep
1574			sandpoint
1575			sbmips
1576			shark
1577			sparc
1578			sparc64
1579			vax
1580			x68k
1581			zaurus
1582
1583		not tested:
1584			pdp10 (i don't know how to build)
1585			sh5 (not buildable with an unrelated problem.)
1586
1587    compile  CAYMAN64/netbsd32_sa.o
1588    cc1: warnings being treated as errors
1589    /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c: In function 'netbsd32_sa_ucsp':
1590    /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c:126: warning: implicit declaration of function '_UC_MACHINE32_SP'
1591    --- netbsd32_sa.o ---
1592    *** [netbsd32_sa.o] Error code 1
1593    1 error
1594
1595		notyet:
1596			amigappc
1597			playstation2
1598
1599Branch:		yamt-vop
1600Description:	remove several VOPs
1601Status:		Terminated; merged to -current
1602Start Date:	Wed Oct 19 2005
1603End Date:	Wed Nov  2 2005
1604Base Tag:	yamt-vop-base3
1605Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
1606Scope:		src/sys
1607Notes:		http://mail-index.NetBSD.org/tech-kern/2005/09/27/0000.html
1608
1609Branch:		yamt-x86pmap
1610Description:	merge i386 and amd64 pmap
1611Status:		Terminated; merged to -current
1612Start Date:	Mon Sep 24 2007
1613End Date:	Fri Oct 19 2007
1614Base Tag:	yamt-x86pmap-base4
1615Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
1616Scope:		src/sys  (src/common is tagged but not branched)
1617Notes:		
1618
1619Branch:		gdamore-uart
1620Description:	Add register table support to com driver.
1621Status:		Active
1622Start Date:	14 June 2006
1623End Date:	13 July 2006
1624Base Tag:	gdamore-uart-base
1625Maintainer:	Garrett D'Amore <gdamore@NetBSD.org>
1626Scope:		kernel
1627Notes:		Results in consolidation of Alchemy (mips/dev/alchemy/aucom.c)
1628		com support, and also removes a nasty hack from Atheros com.
1629
1630########################################################################
1631# Other:
1632########################################################################
1633
1634Branch:		magnum
1635Description:	?
1636Status:		?
1637Start Date:
1638End Date:
1639Base Tag:	magnum-base
1640Maintainer:	?
1641Scope:		kernel
1642Notes:
1643
1644