BRANCHES revision 1.173
11.173Sad#	$NetBSD: BRANCHES,v 1.173 2007/04/10 15:36:02 ad Exp $
21.1Slukem#
31.1Slukem# This file contains a list of branches that exist in the NetBSD CVS
41.1Slukem# tree and their current state.
51.1Slukem#
61.1Slukem# This list is necessarily incomplete.
71.1Slukem# 
81.1Slukem# Within reason, developers may create branch and version tags at any
91.1Slukem# time for any purpose.  To avoid name collisions, private tags should
101.1Slukem# have names which begin with the developer's NetBSD login name
111.1Slukem# followed by a - or _ character (e.g., thorpej_scsipi,
121.1Slukem# thorpej-signal)
131.1Slukem# 
141.1Slukem# Any branch or version tag not listed here should be assumed to be
151.1Slukem# private to the developer who created it.  It is inappropriate for
161.1Slukem# anyone other than that developer to commit, move tags, or otherwise
171.1Slukem# modify the contents of the branch.
181.1Slukem#
191.1Slukem# Please update this file when a new branch is ready for consumption
201.1Slukem# by folks other than the maintainer, or when the use or status of an
211.1Slukem# existing branch changes significantly.
221.1Slukem#
231.1Slukem# Format:
241.1Slukem#   Branch:	  name of branch
251.1Slukem#   Description:  Purpose and intention of the branch
261.1Slukem#   Status:	  Active/Terminated/Dormant
271.1Slukem#   Start Date:	  date first instantiated
281.1Slukem#   End Date:	  date it was Terminated/made_Dormant, if any
291.1Slukem#   Base Tag:	  netbsd-1-5-base, etc.
301.1Slukem#   Maintainer:	  Somebody to blame.
311.1Slukem#   Scope:	  Portion of the tree covered.
321.1Slukem#   Notes:	  Various other info, perhaps explanation of special tags,
331.1Slukem#		  who-may-commit policies, etc.
341.79Sbriggs#
351.79Sbriggs# There are four sections to this file:
361.79Sbriggs#   Release branches
371.79Sbriggs#   Individual developers' branches (Active/Dormant)
381.79Sbriggs#   Individual developers' branches (Terminated), and
391.79Sbriggs#   other
401.79Sbriggs#
411.79Sbriggs# Entries within each section should be alphabetized.
421.79Sbriggs#
431.1Slukem
441.1Slukem
451.1Slukem# Release branches:
461.1Slukem
471.1SlukemBranch:		comdex-fall-1999
481.1SlukemDescription:	Special release branch for pre-1.5 release at
491.1Slukem		Fall 1999 COMDEX.
501.1SlukemStatus:		Terminated
511.1SlukemStart Date:
521.1SlukemEnd Date:
531.1SlukemBase Tag:	comdex-fall-1999-base
541.1SlukemMaintainer:	?
551.1SlukemScope:		Entire tree.
561.1SlukemNotes:
571.1Slukem
581.1SlukemBranch:		netbsd-0-9
591.1SlukemDescription:	The NetBSD 0.9 release branch
601.1SlukemStatus:		Terminated
611.1SlukemStart Date:
621.1SlukemEnd Date:
631.1SlukemBase Tag:	netbsd-0-9-base
641.10SsaloMaintainer:	Release Engineering <releng@NetBSD.org>
651.1SlukemScope:		Entire tree.
661.1SlukemNotes:		Subsidiary tags of: netbsd-0-9-ALPHA, netbsd-0-9-ALPHA2,
671.1Slukem		netbsd-0-9-BETA, netbsd-0-9-RELEASE.
681.1Slukem		Commits restricted to release engineering.
691.1Slukem
701.1SlukemBranch:		netbsd-1-0
711.1SlukemDescription:	The NetBSD 1.0 release branch
721.1SlukemStatus:		Terminated
731.1SlukemStart Date:
741.1SlukemEnd Date:
751.1SlukemBase Tag:	netbsd-1-0-base
761.10SsaloMaintainer:	Release Engineering <releng@NetBSD.org>
771.1SlukemScope:		Entire tree.
781.1SlukemNotes:
791.1Slukem		Commits restricted to release engineering.
801.1Slukem
811.1SlukemBranch:		netbsd-1-1
821.1SlukemDescription:	The NetBSD 1.1 release branch
831.1SlukemStatus:		Terminated
841.1SlukemStart Date:
851.1SlukemEnd Date:
861.1SlukemBase Tag:	netbsd-1-1-base
871.10SsaloMaintainer:	Release Engineering <releng@NetBSD.org>
881.1SlukemScope:		Entire tree.
891.1SlukemNotes:
901.1Slukem		Commits restricted to release engineering.
911.1Slukem
921.1SlukemBranch:		netbsd-1-2
931.1SlukemDescription:	The NetBSD 1.2 release branch
941.1SlukemStatus:		Terminated
951.1SlukemStart Date:
961.1SlukemEnd Date:
971.1SlukemBase Tag:	netbsd-1-2-base
981.10SsaloMaintainer:	Release Engineering <releng@NetBSD.org>
991.1SlukemScope:		Entire tree.
1001.1SlukemNotes:
1011.1Slukem		Commits restricted to release engineering.
1021.1Slukem
1031.1SlukemBranch:		netbsd-1-3
1041.1SlukemDescription:	The NetBSD 1.3 release branch
1051.1SlukemStatus:		Terminated
1061.1SlukemStart Date:
1071.1SlukemEnd Date:
1081.1SlukemBase Tag:	netbsd-1-3-base
1091.10SsaloMaintainer:	Release Engineering <releng@NetBSD.org>
1101.1SlukemScope:		Entire tree.
1111.1SlukemNotes:
1121.1Slukem		Commits restricted to release engineering.
1131.1Slukem
1141.1SlukemBranch:		netbsd-1-4
1151.1SlukemDescription:	The NetBSD 1.4 release branch
1161.13SjmcStatus:		Terminated
1171.1SlukemStart Date:	1 Apr 2000
1181.1SlukemEnd Date:
1191.1SlukemBase Tag:	netbsd-1-4-base
1201.10SsaloMaintainer:	1.4 Release Engineering <releng-1-4@NetBSD.org>
1211.1SlukemScope:		Entire tree.
1221.1SlukemNotes:
1231.1Slukem		Commits restricted to release engineering.
1241.1Slukem
1251.1SlukemBranch:		netbsd-1-5
1261.1SlukemDescription:	The NetBSD 1.5 release branch
1271.37SjmcStatus:		Terminated
1281.1SlukemStart Date:	20 Jun 2000
1291.37SjmcEnd Date:	26 Jan 2005
1301.1SlukemBase Tag:	netbsd-1-5-base
1311.10SsaloMaintainer:	1.5 Release Engineering <releng-1-5@NetBSD.org>
1321.1SlukemScope:		Entire tree.
1331.1SlukemNotes:
1341.1Slukem		Commits restricted to release engineering.
1351.6Slukem
1361.6SlukemBranch:		netbsd-1-6
1371.6SlukemDescription:	The NetBSD 1.6 release branch
1381.91SwizStatus:		Terminated
1391.7SlukemStart Date:	22 May 2002
1401.6SlukemEnd Date:
1411.6SlukemBase Tag:	netbsd-1-6-base
1421.10SsaloMaintainer:	1.6 Release Engineering <releng-1-6@NetBSD.org>
1431.6SlukemScope:		Entire tree.
1441.6SlukemNotes:
1451.6Slukem		Commits restricted to Release Engineering.
1461.1Slukem
1471.88SrizBranch:		netbsd-2
1481.88SrizDescription:    The NetBSD 2 release branch
1491.88SrizStatus:		Active
1501.88SrizStart Date:	23 Dec 2004
1511.88SrizEnd Date:
1521.88SrizBase Tag:	netbsd-2-base
1531.88SrizMaintainer:	2 Release Engineering <releng-2@NetBSD.org>
1541.88SrizScope:		Entire tree. (src + xsrc)
1551.88SrizNotes:
1561.88Sriz		Commits restricted to Release Engineering.
1571.88Sriz
1581.13SjmcBranch:		netbsd-2-0
1591.37SjmcDescription:	Originally the NetBSD 2.0 release branch and now the branch 
1601.37Sjmc		tracking security/critical fixes for the NetBSD 2.0 series
1611.13SjmcStatus:		Active
1621.37SjmcStart Date:	28 Mar 2004 and changed for security/critical function on
1631.37Sjmc       		23 Dec 2004
1641.13SjmcEnd Date:
1651.13SjmcBase Tag:	netbsd-2-0-base
1661.13SjmcMaintainer:	2.0 Release Engineering <releng-2-0@NetBSD.org>
1671.13SjmcScope:		Entire tree. (src + xsrc)
1681.37SjmcNotes:		Branch was re-purposed to security/critical change function
1691.37Sjmc		once 2.0 released. See netbsd-2 for current branch to track
1701.37Sjmc		NetBSD 2 tree.
1711.37Sjmc		Commits restricted to Release Engineering.
1721.37Sjmc
1731.88SrizBranch:		netbsd-2-1
1741.88SrizDescription:	Tracking security/critical fixes for NetBSD 2.1
1751.37SjmcStatus:		Active
1761.88SrizStart Date:     26 Oct 2005 
1771.37SjmcEnd Date:
1781.88SrizBase Tag:	netbsd-2-1-RELEASE
1791.37SjmcMaintainer:	2 Release Engineering <releng-2@NetBSD.org>
1801.37SjmcScope:		Entire tree. (src + xsrc)
1811.88SrizNotes:		Branch contains only security/critical fixes to
1821.88Sriz		NetBSD 2.1.  For new features, use netbsd-2 branch.
1831.13Sjmc		Commits restricted to Release Engineering.
1841.13Sjmc
1851.36SjmcBranch:		netbsd-3
1861.36SjmcDescription:	The NetBSD 3 release branch
1871.36SjmcStatus:		Active
1881.36SjmcStart Date:	16 Mar 2005
1891.36SjmcEnd Date:
1901.36SjmcBase Tag:	netbsd-3-base
1911.37SjmcMaintainer:	3 Release Engineering <releng-3@NetBSD.org>
1921.36SjmcScope:		Entire tree. (src + xsrc)
1931.36SjmcNotes:
1941.36Sjmc		Commits restricted to Release Engineering.
1951.1Slukem
1961.88SrizBranch:		netbsd-4
1971.88SrizDescription:	The NetBSD 4 release branch
1981.51SrizStatus:		Active
1991.88SrizStart Date:	8 Aug 2006
2001.51SrizEnd Date:
2011.88SrizBase Tag:	netbsd-4-base
2021.88SrizMaintainer:	4 Release Engineering <releng-4@NetBSD.org>
2031.51SrizScope:		Entire tree. (src + xsrc)
2041.88SrizNotes:
2051.51Sriz		Commits restricted to Release Engineering.
2061.51Sriz
2071.79Sbriggs########################################################################
2081.79Sbriggs# Individual developers' branches (Active/Dormant):
2091.79Sbriggs########################################################################
2101.4Sbjh21
2111.158SyamtBranch:		ad-audiomp
2121.158SyamtDescription:	Add MP locking to the audio drivers
2131.158SyamtStatus:		Active
2141.161SadStart Date:	28 Febuary 2007
2151.158SyamtEnd Date:
2161.158SyamtBase Tag:	ad-audiomp-base
2171.158SyamtMaintainer:	Andrew Doran <ad@NetBSD.org>
2181.158SyamtScope:		kernel
2191.158SyamtNotes:		Making the audio drivers MP safe is necessary before efforts
2201.158Syamt		can be made to make the VM system MP safe. About 1/2 of the
2211.158Syamt		drivers are converted, the remaining 1/2 need more changes.
2221.158Syamt
2231.158Syamt		As of import this is snapshot of work in progress and so
2241.158Syamt		may not compile; in particular the midi changes are very
2251.158Syamt		much "in progress". The audio component has been tested
2261.158Syamt		and verified to work with emuxki and auvia. There may
2271.158Syamt		be a locking issue in the ac97 code at boot.
2281.158Syamt
2291.158Syamt		The are two locks per device instance, an ISR lock and
2301.158Syamt		a character device lock. The ISR lock replaces calls to
2311.158Syamt		splaudio()/splx(), and will be held across calls to device
2321.158Syamt		methods which were called at splaudio() before (e.g.
2331.158Syamt		trigger_output). The character device lock is held across
2341.158Syamt		calls to nearly all of the methods, excluding some only
2351.158Syamt		used for initializtion, e.g. get_locks. This needs to be
2361.158Syamt		documented at merge time.
2371.158Syamt
2381.158Syamt		To test on a multi way x86 system, search for "mpsafe" in
2391.158Syamt		x86/x86/intr.c and change IPL_SCHED to IPL_AUDIO. Run a job
2401.158Syamt		that will acquire the ISR lock (depends on the hardware, but
2411.158Syamt		"while true; do mixerctl -a > /dev/null; done" may suffice).
2421.158Syamt		Play audio, run lockstat and verify that that there is
2431.158Syamt		contention on the ISR lock.
2441.158Syamt
2451.4Sbjh21Branch:		bjh21-hydra
2461.4Sbjh21Description:	Simtec Hydra support and ARM SMP in general
2471.90Sbjh21Status:		Dormant
2481.4Sbjh21Start Date:	18 Oct 2002
2491.4Sbjh21End Date:
2501.4Sbjh21Base Tag:	bjh21-hydra-base
2511.10SsaloMaintainer:	Ben Harris <bjh21@NetBSD.org>
2521.4Sbjh21Scope:		sys/arch/arm sys/arch/acorn32
2531.90Sbjh21Notes:		This code was on a branch because it involves changes to
2541.4Sbjh21		cpuswitch.S which would otherwise make merging the
2551.90Sbjh21		nathanw_sa branch difficult.
2561.1Slukem
2571.79SbriggsBranch:		gmcgarry_ctxsw
2581.79SbriggsDescription:	Separate scheduler from context-switch code
2591.79SbriggsStatus:		Dormant
2601.79SbriggsStart Date:	18 December 2002
2611.79SbriggsEnd Date:
2621.79SbriggsBase Tag:	gmcgarry_ctxsw_base
2631.79SbriggsMaintainer:	Gregory McGarry <gmcgarry@NetBSD.org>
2641.79SbriggsScope:		kernel
2651.79SbriggsNotes:		Removing knowledge of the schedular and its run queues
2661.79Sbriggs		from the machine-dependent context switch code is the
2671.79Sbriggs		first step in cleaning up the scheduler.  It is necessary
2681.79Sbriggs		for the newlock branch, making the scheduler SMP friendly,
2691.79Sbriggs		adding real-time scheduler extensions, and reducing the
2701.79Sbriggs		number of code paths for LWP and proc switching.
2711.79Sbriggs
2721.79SbriggsBranch:		gmcgarry_ucred
2731.79SbriggsDescription:	Integrate and encapsulate user credentials
2741.79SbriggsStatus:		Dormant
2751.79SbriggsStart Date:	18 December 2002
2761.79SbriggsEnd Date:
2771.79SbriggsBase Tag:	gmcgarry_ucred_base
2781.79SbriggsMaintainer:	Gregory McGarry <gmcgarry@NetBSD.org>
2791.79SbriggsScope:		kernel
2801.79SbriggsNotes:		merge pcred and ucred and poolify
2811.79Sbriggs
2821.79SbriggsBranch:		kame
2831.79SbriggsDescription:	KAME Project
2841.79SbriggsStatus:		Dormant
2851.79SbriggsStart Date:	28 Jun 1999
2861.79SbriggsEnd Date:
2871.79SbriggsBase Tag:
2881.79SbriggsMaintainer:	Jun-ichiro itojun Hagino <itojun@NetBSD.org>
2891.79SbriggsScope:		kernel
2901.79SbriggsNotes:		http://www.kame.net
2911.79Sbriggs		Used for "reference" purposes for early part of KAME
2921.79Sbriggs		integration effort.  The branch is not actively used, as I
2931.79Sbriggs		(itojun) use patch(1) and diff(1) for the KAME syncs.
2941.79Sbriggs
2951.79SbriggsBranch:		kent-audio2
2961.79SbriggsDescription:	In-kernel audio mixer
2971.79SbriggsStatus:		Active
2981.79SbriggsStart Date:	Sun Jan 16 2005
2991.79SbriggsEnd Date:	
3001.79SbriggsBase Tag:	kent-audio2-base
3011.79SbriggsMaintainer:	TAMURA Kent <kent@NetBSD.org>
3021.79SbriggsScope:		kernel (audio device drivers)
3031.79SbriggsNotes:		http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html
3041.79Sbriggs		Please consult with the maintainer before committing
3051.79Sbriggs		to this branch.
3061.79Sbriggs		This branch is not expected to be compilable yet.
3071.79Sbriggs
3081.79SbriggsBranch:		matt-timespec
3091.79SbriggsDescription:	Convert the kernel to struct timespec as its primary time
3101.79Sbriggs		storage mechanism.
3111.79SbriggsStatus:		Active
3121.79SbriggsStart Date:	2005-02-19
3131.79SbriggsEnd Date:
3141.79SbriggsBase Tag:	
3151.79SbriggsMaintainer:	Matt Thomas <matt@NetBSD.org>
3161.79SbriggsScope:		kernel
3171.79SbriggsNotes:	
3181.79Sbriggs
3191.79SbriggsBranch:		newlock
3201.79SbriggsDescription:	New locking primitives, based on Solaris's
3211.154SadStatus:		Terminated
3221.79SbriggsStart Date:	March 9, 2002
3231.154SadEnd Date:	Febuary 12, 2007
3241.79SbriggsBase Tag:	newlock-base
3251.79SbriggsMaintainer:	Jason R. Thorpe <thorpej@NetBSD.org>
3261.79SbriggsScope:		Kernel
3271.79SbriggsNotes:		The goal is to replace the existing lockmgr() and
3281.79Sbriggs		simple_lock() based locking mechanisms with the
3291.79Sbriggs		primitives found in Solaris: mutexes and rwlocks.
3301.154Sad		Superseeded by the newlock2 branch.
3311.79Sbriggs
3321.94SadBranch:		newlock2
3331.94SadDescription:	New locking primitives, based on Solaris's
3341.154SadStatus:		Terminated
3351.94SadStart Date:	September 9, 2006
3361.154SadEnd Date:	Febuary 12, 2007
3371.94SadBase Tag:	newlock2-base
3381.94SadMaintainer:	Andrew Doran <ad@NetBSD.org>
3391.94SadScope:		Kernel
3401.94SadNotes:		As per the newlock branch, however given the amount of time
3411.94Sad		the original branch has lain dormant, a new one has been
3421.154Sad		created.  Goals:
3431.95Swiz		- Implement new locking primitives on most-used ports.
3441.94Sad		- Minor locking improvements.
3451.94Sad		- Remove spinlockmgr().
3461.94Sad
3471.79SbriggsBranch:	  	pkgviews
3481.79SbriggsDescription:  	package views, enabling multiple conflicting packages to co-exist
3491.79SbriggsStatus:		Active
3501.79SbriggsStart Date:	22 July 2002
3511.79SbriggsEnd Date:
3521.79SbriggsBase Tag:	pkgviews
3531.79SbriggsMaintainer:	Alistair Crooks <agc@NetBSD.org>
3541.79SbriggsScope:		pkgsrc, basesrc/usr.sbin/pkg_install
3551.79SbriggsNotes:		A more flexible infrastructure for third-party packages by
3561.79Sbriggs		allowing multiple conflicting packages and versions to co-exist
3571.79Sbriggs		within the same tree
3581.79Sbriggs
3591.79SbriggsBranch:		rpaulo-netinet-merge-pcb
3601.79SbriggsDescription:	merge in6pcb with inpcb
3611.133SrpauloStatus:		Dormant
3621.79SbriggsStart Date:	Wed Feb 01 2006
3631.79SbriggsEnd Date:	
3641.79SbriggsBase Tag:	rpaulo-netinet-merge-pcb-base
3651.79SbriggsMaintainer:	Rui Paulo <rpaulo@NetBSD.org>
3661.79SbriggsScope:		src/sys
3671.135SrpauloNotes:		No longer active due to the lack of time. If you plan to
3681.135Srpaulo		continue this branch, sys/netinet/in_pcb.h already contains
3691.135Srpaulo		the proposed structure layout (which was roughly discussed
3701.135Srpaulo		in the tech-net mailing list).
3711.135Srpaulo		I also defined INP_*() macros to mimicate FreeBSD's inpcb
3721.135Srpaulo		locking style, but currently they do nothing and are not
3731.135Srpaulo		yet called at the correct places (needs discussion about
3741.135Srpaulo		kernel fine-grained locking).
3751.135Srpaulo		To continue this branch, one needs to read all the relevant
3761.135Srpaulo		inpcb/in6pcb source files and change the function names,
3771.135Srpaulo		structure names, structure fileds according to the new
3781.135Srpaulo		layout (in6pcb is gone).
3791.135Srpaulo		Don't try to build a kernel from this branch because it won't
3801.135Srpaulo		work. The missing pieces required to do a complete build
3811.135Srpaulo		were not committed because they were incomplete and generated
3821.135Srpaulo		panics.
3831.135Srpaulo		You shouldn't need to worry about KAME syncs because
3841.135Srpaulo		they did most of them by now.
3851.135Srpaulo		After the work is done, you are required to test the branch
3861.135Srpaulo		(before the merge to -current) with an interop IPv6 test.
3871.135Srpaulo		More info at: http://www.tahi.org/
3881.79Sbriggs
3891.79SbriggsBranch:		rtr-xorg-branch
3901.79SbriggsDescription:	xorg & static build alterations to src/x11
3911.79SbriggsStatus:		Active
3921.79SbriggsStart Date:	Nov 15 2004
3931.79SbriggsEnd Date:	
3941.79SbriggsBase tag:	rtr-xorg-branch-base
3951.79SbriggsMaintainer:	Tyler R. Retzlaff <rtr@NetBSD.org>
3961.79SbriggsScope:		x11
3971.79Sbriggs		distrib/sets/lists
3981.79Sbriggs		share/mk/bsd.x11.mk
3991.79Sbriggs		share/mk/bsd.own.mk
4001.79Sbriggs		etc/mtree/NetBSD.dist
4011.79SbriggsNotes:		Requires parts of xsrc/xfree (HEAD)
4021.79Sbriggs		xsrc/local, xsrc/xfree/xc/programs/Xserver/hw/netbsd
4031.79Sbriggs		Requires xorg (XORG-6_8_1)
4041.79Sbriggs
4051.79SbriggsBranch:		thorpej-devvp
4061.79SbriggsDescription:	replace dev_t with struct vnode * in devsw entry points
4071.79SbriggsStatus:		Active
4081.79SbriggsStart Date:	Sep 6 2001
4091.79SbriggsEnd Date:
4101.79SbriggsBase Tag:	thorpej-devvp-base
4111.79SbriggsMaintainer:	Jason Thorpe <thorpej@NetBSD.org>
4121.79SbriggsScope:		syssrc
4131.79SbriggsNotes:		Kernels built from this branch are not expected
4141.79Sbriggs		to function correctly at this time.
4151.79Sbriggs
4161.79Sbriggs		Ports known to compile on this branch:
4171.79Sbriggs			alpha
4181.79Sbriggs			i386
4191.79Sbriggs
4201.161SadBranch:		vmlocking
4211.161SadDescription:	Make memory allocators and trap handling MP safe
4221.161SadStatus:		Active
4231.161SadStart Date:	13 March 2007
4241.161SadEnd Date:
4251.161SadBase Tag:	vmlocking-base
4261.161SadMaintainer:	Andrew Doran <ad@NetBSD.org>
4271.161SadScope:		kernel
4281.161SadNotes:
4291.161Sad		- Replace all simplelocks with mutexes
4301.161Sad		- Remove spinlockmgr
4311.161Sad		- Make memory allocators MP safe
4321.162Sad		- Make trap handling MP safe: push kernel lock acquire
4331.162Sad		  back into pager ops.
4341.162Sad
4351.162Sad		Only i386 is currently update.  Most per architecture
4361.162Sad		changes need to be made in the pmap module.  LFS is not
4371.162Sad		currently stable due interaction between the pagedaemon (?)
4381.162Sad		and the HOLDRELE() in lfs_segment.c.  It may trash your
4391.162Sad		filesystem..
4401.161Sad
4411.161Sad		Most of the locks replaced are now sleep/adaptive locks or
4421.161Sad		spin locks at IPL_VM.  Assuming audio interrupt handlers
4431.161Sad		are made MP safe there are far fewer potential deadlocks
4441.161Sad		against the kernel lock.
4451.161Sad
4461.161Sad		v_interlock becomes an adaptive mutex so now acquring
4471.161Sad		it can potentially block, similarly for other locks
4481.161Sad		that were before simplelocks.  This needs to be audited
4491.161Sad		carefully.
4501.161Sad
4511.161Sad		Use vnodes in general needs to be audited, as vnodes can
4521.161Sad		now be inspected without the kernel lock held.
4531.161Sad
4541.161Sad		Acquiring locks in the pmap module can now block, meaning
4551.161Sad		that the current pmap, cpu or lazy pmap status can change
4561.161Sad		out from underneath the requestor.  This also needs to be
4571.161Sad		audited.
4581.161Sad
4591.161Sad		Currently, i386 has the necessary modifications, and has
4601.161Sad		trap handling and a few calls to allocators out from under
4611.161Sad		the kernel lock.  There are still problems that need to be
4621.161Sad		debugged.
4631.161Sad
4641.161Sad		Need to check that whenever a lock is initialized, it is
4651.161Sad		also destroyed.
4661.161Sad
4671.161Sad		Lots of testing required.
4681.161Sad
4691.153SyamtBranch:		yamt-idlelwp
4701.153SyamtDescription:	idle lwp, and some changes depending on it.
4711.153Syamt
4721.153Syamt		1. separate context switching and thread scheduling.
4731.153Syamt		   (cf. gmcgarry_ctxsw)
4741.153Syamt		2. implement idle lwp.
4751.153Syamt		3. clean up related MD/MI interfaces.
4761.173Sad		4. make scheduler(s) modular.
4771.153Syamt
4781.153SyamtStatus:		Active
4791.153SyamtStart Date:	Fri Feb 17 2007
4801.153SyamtEnd Date:	
4811.168SyamtBase Tag:	yamt-idlelwp-base4
4821.153SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
4831.153SyamtScope:		src/sys  (src/common is tagged but not branched)
4841.153SyamtNotes:		
4851.166Srmind		Status of ports (minimal goals):
4861.167Syamt		  alpha			[ Done,
4871.167Syamt					  UP tested, MP not tested ]
4881.167Syamt		  i386			[ Done, tested ]
4891.167Syamt		  amd64			[ Done, tested ]
4901.167Syamt		  mips			[ WIP ]
4911.171Srmind		  sparc			[ WIP ]
4921.171Srmind		  sparc64		[ WIP ]
4931.170Sskrll		  arm			[ Done.
4941.170Sskrll					  SA1 tested. ]
4951.172Smatt		  macppc/powerpc	[ Done, OEA tested ]
4961.167Syamt		  hppa			[ WIP ]
4971.169Suwe		  sh3			[ Done, tested ]
4981.172Smatt		  vax			[ Done, UP tested, MP untested ]
4991.166Srmind
5001.166Srmind		How to adapt a port?
5011.165Syamt
5021.165Syamt		- unify cpu_switch, cpu_exit, cpu_switchto into
5031.165Syamt		  a single cpu_switchto.  see cpu_switchto.9.
5041.165Syamt
5051.165Syamt		- implement cpu_idle.  see cpu_idle.9.
5061.165Syamt
5071.165Syamt		- add a flag argument to cpu_need_resched.
5081.165Syamt		  handle RESCHED_IMMED flag, which means "cause a preemption
5091.165Syamt		  as soon as possible."  eg. in the case of MULTIPROCESSOR,
5101.165Syamt		  send an IPI to the target cpu.
5111.165Syamt
5121.165Syamt		- "curlwp == NULL" is not a valid check for idle state anymore.
5131.165Syamt		  use "(curlwp->l_flag & LW_IDLE) != 0" instead.  curlwp is
5141.165Syamt		  almost always non-NULL, with exceptions like early on boot.
5151.165Syamt
5161.165Syamt		- remove idle pcbs.
5171.165Syamt
5181.167Syamt		- (if MULTIPROCESSOR) tweak processor trampoline code.
5191.167Syamt
5201.167Syamt		- (if MULTIPROCESSOR) call mi_cpu_attach when attaching
5211.167Syamt		  secondary processors.
5221.165Syamt
5231.165Syamt		- (if schedhz!=0) call schedclock regardless of the value of
5241.165Syamt		  curlwp.
5251.165Syamt
5261.165Syamt		- of course, update MD users of scheduler/switching API.
5271.153Syamt
5281.79SbriggsBranch:		yamt-lazymbuf
5291.79SbriggsDescription:	implement and evaluate lazy mapping of mbuf external data pages
5301.92Syamt		it's intended as the first step of larger changes.
5311.92Syamt			1. support operations (esp. bus_dma load) on
5321.92Syamt			   unmapped mbuf.
5331.92Syamt			2. unify mbuf and buf.
5341.92Syamt			   (or, at least some parts of them)
5351.92Syamt			3. then it should be trivial to implement
5361.92Syamt			   i/o coalescing, etc.
5371.79SbriggsStatus:		Active
5381.79SbriggsStart Date:	Wed Jul  6 2005
5391.79SbriggsEnd Date:	
5401.157SyamtBase Tag:	yamt-lazymbuf-base4
5411.79SbriggsMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
5421.152SyamtScope:		src/sys  (src/common is tagged but not branched)
5431.79SbriggsNotes:		
5441.79Sbriggs
5451.163SreinoudBranch:		reinoud-bufcleanup
5461.164SreinoudDescription:	implement and evaluate struct buf usage cleanup strategies.
5471.164Sreinoud		Ideas currently in mind (preference for b):
5481.164Sreinoud		a)
5491.163Sreinoud			1. use of bio_ops per buffer.
5501.163Sreinoud			2. allow chaining/overloading of functions in bio_ops
5511.163Sreinoud			   and provide some private context.
5521.163Sreinoud			3. extend the bio_ops with commenly used functionality
5531.163Sreinoud			   like pending action counting, custom context passing,
5541.163Sreinoud			   last minute processing of buffer data, buffer cache
5551.163Sreinoud			   etc.
5561.163Sreinoud			4. investigate the use of the kcont()
5571.163Sreinoud			   continuation-passing framework for async io
5581.163Sreinoud			   completion notification for bufs
5591.164Sreinoud			...
5601.164Sreinoud		b)
5611.164Sreinoud			1. all sequencing use of B_CALL replaced by
5621.164Sreinoud			   device-threads, if possible generic code around BUFQ
5631.164Sreinoud			2. possibly use kcont() for async IO finished signalling
5641.164Sreinoud			3. counter of pending and queued actions requestable
5651.164Sreinoud			   by IOCTL interface?
5661.164Sreinoud			4. implement `last minute buffer fixup' calls and maybe
5671.164Sreinoud			   even finished I/O calls as vnode operations
5681.164Sreinoud			...
5691.163SreinoudStatus:		Active
5701.163SreinoudStart Date:	Thu Mar 15 2007
5711.163SreinoudEnd Date:
5721.163SreinoudBase Tag:	reinoud-bufcleanup-base
5731.163SreinoudMaintainer:	Reinoud Zandijk <reinoud@NetBSD.org>
5741.163SreinoudScope:		src/sys and src/common
5751.163SreinoudNotes:		Used as expiriment sandbox and if successful hopefully one day
5761.163Sreinoud		to be intergrated.
5771.163Sreinoud
5781.79Sbriggs
5791.79Sbriggs########################################################################
5801.79Sbriggs# Individual developers' branches (Terminated):
5811.79Sbriggs########################################################################
5821.79Sbriggs
5831.1SlukemBranch:		bouyer-scsipi
5841.1SlukemDescription:	Integration of atapi support
5851.1SlukemStatus:		Terminated
5861.1SlukemStart Date:
5871.1SlukemEnd Date:
5881.1SlukemBase Tag:
5891.10SsaloMaintainer:	Manuel Bouyer <bouyer@NetBSD.org>
5901.1SlukemScope:		kernel
5911.1SlukemNotes:		Superseded by thorpej_scsipi
5921.1Slukem
5931.79SbriggsBranch:		bouyer-xen2
5941.79SbriggsDescription:	update xen port to xen 2.0, with support for domain0 operations
5951.79SbriggsStatus:		Terminated
5961.79SbriggsStart Date:	Dec 13 2004
5971.79SbriggsEnd Date:	Mar 10 2005
5981.79SbriggsBase Tag:	netbsd-2-base
5991.79SbriggsMaintainer:	Manuel Bouyer <bouyer@NetBSD.org>
6001.79SbriggsScope:		src/sys/arch/xen
6011.79SbriggsNotes:
6021.79Sbriggs
6031.87SchapBranch: 	chap-midi
6041.87SchapDescription:	Renovation of MIDI support
6051.87SchapStatus: 	Terminated; merged to -current
6061.87SchapStart Date:	19 May 2006
6071.87SchapEnd Date:	30 Jun 2006
6081.87SchapBase Tag:	chap-midi-base
6091.87SchapMaintainer:	Chapman Flack <chap@NetBSD.org>
6101.87SchapScope:		sys, share/man, usr.bin
6111.87SchapNotes:
6121.87Schap
6131.1SlukemBranch:		chs-ubc
6141.44SchsDescription:	Unified Buffer Cache
6151.44SchsStatus:		Terminated
6161.1SlukemStart Date:
6171.1SlukemEnd Date:
6181.1SlukemBase Tag:	chs-ubc-base
6191.10SsaloMaintainer:	Chuck Silvers <chs@NetBSD.org>
6201.1SlukemScope:		kernel
6211.1SlukemNotes:
6221.1Slukem
6231.1SlukemBranch:		chs-ubc2
6241.44SchsDescription:	 Unified Buffer Cache
6251.44SchsStatus:		Terminated; merged to -current
6261.1SlukemStart Date:
6271.1SlukemEnd Date:
6281.1SlukemBase Tag:	chs-ubc2-base, chs-ubc2-newbase
6291.10SsaloMaintainer:	Chuck Silvers <chs@NetBSD.org>
6301.1SlukemScope:		kernel
6311.1SlukemNotes:
6321.1Slukem
6331.1SlukemBranch:		cjs-build-against-obj-dir
6341.1SlukemDescription:	?
6351.1SlukemStatus:		?
6361.1SlukemStart Date:
6371.1SlukemEnd Date:
6381.1SlukemBase Tag:
6391.10SsaloMaintainer:	Curt Sampson <cjs@NetBSD.org>
6401.1SlukemScope:		Entire tree.
6411.1SlukemNotes:
6421.1Slukem
6431.1SlukemBranch:		eeh-paddr_t
6441.44SchsDescription:	use separate types for virtual vs. physical addresses
6451.44SchsStatus:		Terminated; merged to -current
6461.1SlukemStart Date:
6471.1SlukemEnd Date:
6481.1SlukemBase Tag:	eeh-paddr_t-base
6491.10SsaloMaintainer:	Eduardo Horvath <eeh@NetBSD.org>
6501.1SlukemScope:		kernel
6511.44SchsNotes:		This is needed to support 32-bit kernels on sparc64.
6521.1Slukem
6531.79SbriggsBranch:		elad-kernelauth
6541.79SbriggsDescription:	Native NetBSD implementation of Apple's kernel authorization
6551.79Sbriggs		based on TN2127. This is a "clean-room" implementation to
6561.79Sbriggs		avoid any licensing issues.
6571.79SbriggsStatus:		Terminated; merged to -current
6581.79SbriggsStart Date:	Tue Mar	 7 2006
6591.79SbriggsEnd Date:	Mon May 15 2006
6601.79SbriggsBase Tag:	elad-kernelauth-base
6611.79SbriggsMaintainer:	Elad Efrat <elad@NetBSD.org>
6621.79SbriggsScope:		src/sys, src/share/man/man9/Makefile,
6631.79Sbriggs		src/share/man/man9/kauth.h, src/distrib/sets/lists/comp/mi
6641.79SbriggsNotes:
6651.79Sbriggs
6661.1SlukemBranch:		fvdl-softdep
6671.1SlukemDescription:	FFS soft dependencies
6681.44SchsStatus:		Terminated; merged to -current
6691.1SlukemStart Date:
6701.1SlukemEnd Date:
6711.1SlukemBase Tag:	fvdl-softdep-base
6721.10SsaloMaintainer:	Frank van der Linden <fvdl@NetBSD.org>
6731.1SlukemScope:		kernel
6741.1SlukemNotes:
6751.1Slukem
6761.1SlukemBranch:		gehenna-devsw
6771.1SlukemDescription:	auto-generation of devsw table
6781.1SlukemStatus:		Terminated
6791.1SlukemStart Date:	16 May 2002
6801.1SlukemEnd Date:	6 Sep 2002
6811.1SlukemBase Tag:	gehenna-devsw-base
6821.10SsaloMaintainer:	MAEKAWA Masahide <gehenna@NetBSD.org>
6831.1SlukemScope:		syssrc
6841.1SlukemNotes:		The goal is to get rid of the existing device switch tables in
6851.1Slukem		port-dependent conf.c and to generate them dynamically by
6861.1Slukem		config(8).
6871.8Sgmcgarry
6881.1SlukemBranch:		is-newarp
6891.23SisDescription:	ARP for non-Ethernet
6901.23SisStatus:		Terminated; merged before NetBSD 1.3
6911.23SisStart Date:	1996/10/13
6921.23SisEnd Date:	1997/03/15
6931.1SlukemBase Tag:	is-newarp-base
6941.10SsaloMaintainer:	Ignatios Souvatzis <is@NetBSD.org>
6951.1SlukemScope:		kernel
6961.1SlukemNotes:
6971.1Slukem
6981.1SlukemBranch:		kenh-if-detach
6991.1SlukemDescription:	Interface detach support.
7001.1SlukemStatus:		?
7011.1SlukemStart Date:
7021.1SlukemEnd Date:
7031.1SlukemBase Tag:	kenh-if-detach-base
7041.10SsaloMaintainer:	Ken Hornstein <kenh@NetBSD.org>
7051.1SlukemScope:		kernel
7061.1SlukemNotes:
7071.1Slukem
7081.16SkentBranch:		kent-audio1
7091.16SkentDescription:	Audio converter pipeline
7101.18SkentStatus:		Terminated; merged to -current
7111.16SkentStart Date:	Tue Dec  7 2004
7121.17SkentEnd Date:	Tue Jan 11 2005
7131.17SkentBase Tag:	kent-audio1-base
7141.17SkentMaintainer:	TAMURA Kent <kent@NetBSD.org>
7151.17SkentScope:		kernel (audio device drivers)
7161.17SkentNotes:		http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html
7171.17Skent		Please consult with the maintainer before committing
7181.17Skent		to this branch.
7191.17Skent
7201.1SlukemBranch:		kqueue
7211.1SlukemDescription:	kqueue kernel event notification mechanism (from FreeBSD)
7221.5SjdolecekStatus:		Terminated; merged to -current
7231.1SlukemStart Date:	Tue Jul 10 23:08:38 EST 2001
7241.5SjdolecekEnd Date:	Tue Oct 24 09:14:14 GMT 2002
7251.1SlukemBase Tag:	kqueue-base
7261.1SlukemMaintainer:	Jaromir Dolecek <jdolecek@NetBSD.org>
7271.1SlukemScope:		kernel, libc/sys, share/man/man9, usr.bin/fstat
7281.1SlukemNotes:		Integration of FreeBSD's kqueue(2) mechanism, with various
7291.1Slukem		local internal changes to better suit NetBSD, and
7301.1Slukem		enhancements such as looking up filters by name or
7311.1Slukem		number, and dynamic registration of "user" filters.
7321.1Slukem		The work is complete as is, but is awaiting more
7331.1Slukem		feedback from various kernel gurus before going mainline.
7341.11Sskrll
7351.11SskrllBranch:		ktrace-lwp
7361.11SskrllDescription:	ktrace support for lwp ids.
7371.59SskrllStatus:		Terminated; merged to -current
7381.11SskrllStart Date:	Wed Jul  2 15:27:30 UTC 2003
7391.59SskrllEnd Date:	Sun Dec 11 12:25:29 UTC 2005
7401.11SskrllBase Tag:	ktrace-lwp-base
7411.12SgrantMaintainer:	Darren Reed <darrenr@NetBSD.org>
7421.11SskrllScope:		sys
7431.11SskrllNotes:		
7441.1Slukem
7451.1SlukemBranch:		marc-pcmcia
7461.1SlukemDescription:	PCMCIA support
7471.1SlukemStatus:		Terminated; merged to -current
7481.1SlukemStart Date:
7491.1SlukemEnd Date:
7501.1SlukemBase Tag:	marc-pcmcia-base, marc-pcmcia-bp
7511.10SsaloMaintainer:	Marc Horowitz <marc@NetBSD.org>
7521.1SlukemScope:		kernel
7531.1SlukemNotes:
7541.1Slukem
7551.1SlukemBranch:		minoura_x68k_bus_h
7561.1SlukemDescription:	bus_space(9) and bus_dma(9) implementation for x68k
7571.1SlukemStatus:		Terminated; merged to -current
7581.1SlukemStart Date:	23 Dec 1998
7591.1SlukemEnd Date:	16 Mar 1999
7601.1SlukemBase Tag:	minoura_x68k_bus_h-base
7611.10SsaloMaintainer:	Minoura Makoto <minoura@NetBSD.org>
7621.1SlukemScope:		sys/arch/x68k
7631.1SlukemNotes:
7641.1Slukem
7651.1SlukemBranch:		minoura-xpg4dl
7661.1SlukemDescription:	Citrus Project locale subsystem
7671.1SlukemStatus:		Terminated; (partly) merged to -current
7681.1SlukemStart Date:	28 March 2000
7691.1SlukemEnd Date:
7701.1SlukemBase Tag:	minoura-xpg4dl-base
7711.10SsaloMaintainer:	Minoura Makoto <minoura@NetBSD.org>
7721.1SlukemScope:		basesrc, syssrc, sharesrc
7731.1SlukemNotes:		Citrus Project is developing dynamically-loadable, codeset-
7741.1Slukem		independent locale subsystem.  Part of the implementation
7751.1Slukem		(LC_CTYPE) called XPG4DL is now integrated to -current.
7761.1Slukem
7771.160SmjfBranch:		mjf-ufs-trans
7781.160SmjfDescription:	filesystem transactions for ufs
7791.160SmjfStatus:		Active
7801.160SmjfStart Date:	12 March 2007
7811.160SmjfEnd Date:
7821.160SmjfBase Tag:	mjf-ufs-trans-base
7831.160SmjfMaintainer:	Matt Fleming <mjf@NetBSD.org>
7841.160SmjfScope:		kernel
7851.160SmjfNotes:
7861.160Smjf
7871.1SlukemBranch:		mrg-vm-swap
7881.49SmrgDescription:	dynamic swap allocation, swap-to-files support
7891.49SmrgStatus:		Terminated; abondoned for mrg-vm-swap2
7901.49SmrgStart Date:	12 February 1997
7911.49SmrgEnd Date:	15 March 1997
7921.49SmrgBase Tag:	[none]
7931.49SmrgMaintainer:	Matthew R. Green <mrg@NetBSD.org>
7941.49SmrgScope:		kernel
7951.49SmrgNotes:
7961.49Smrg
7971.49SmrgBranch:		mrg-vm-swap2
7981.49SmrgDescription:	dynamic swap allocation, swap-to-files support
7991.49SmrgStatus:		Terminated; merged to -current
8001.49SmrgStart Date:	4 May 1997
8011.49SmrgEnd Date:	12 June 1997
8021.49SmrgBase Tag:	mrg-vm-swap2-base
8031.10SsaloMaintainer:	Matthew R. Green <mrg@NetBSD.org>
8041.1SlukemScope:		kernel
8051.1SlukemNotes:
8061.1Slukem
8071.1SlukemBranch:		nathanw_sa
8081.1SlukemDescription:	Scheduler activations
8091.44SchsStatus:		Terminated; merged to -current
8101.1SlukemStart Date:	5 March 2001
8111.9SthorpejEnd Date:	18 January 2003
8121.1SlukemBase Tag:	nathanw_sa_base
8131.10SsaloMaintainer:	Nathan Williams <nathanw@NetBSD.org>
8141.1SlukemScope:		kernel, libc, libkvm, libpthread, libpthread_dbg, include, 
8151.1Slukem		bin/ps usr.bin/systat usr.bin/top usr.bin/w
8161.1Slukem		gnu/dist/toolchain/gdb gnu/usr.bin/gdb
8171.1SlukemNotes:		The idea of scheduler activations is described in the
8181.1Slukem		classic paper by Anderson et al., in ACM Transactions
8191.1Slukem		a on Computer Systems volume 10 issue 1 (1992),which
8201.1Slukem		can be found at
8211.1Slukem		http://www.acm.org/pubs/citations/journals/tocs/1992-10-1/p53-anderson/
8221.1Slukem		Many ideas in the implementation are based on the
8231.1Slukem		implementation of scheduler activations added to Mach
8241.1Slukem		3.0 and described by Davis et al. in the University of
8251.1Slukem		Washington CS tech report 92-08-93, which can be found
8261.1Slukem		at
8271.1Slukem		ftp://ftp.cs.washington.edu/tr/1992/08/UW-CSE-92-08-03.PS.Z
8281.1Slukem
8291.1Slukem		My USENIX paper on the subject can be found at
8301.1Slukem		http://web.mit.edu/nathanw/www/usenix/
8311.1Slukem
8321.1Slukem		Please consult with the maintainer before committing
8331.1Slukem		to this branch.
8341.1Slukem		Other tags starting with nathanw_sa reserved for
8351.1Slukem		branch management and are not guaranteed to be stable.
8361.9Sthorpej
8371.9Sthorpej		Trunk tagged with "nathanw_sa_before_merge" prior to
8381.9Sthorpej		merging branch down to trunk.  Branch tagged with
8391.9Sthorpej		"nathanw_sa_end" to indicate the ending revision of
8401.9Sthorpej		the branch.
8411.1Slukem
8421.1SlukemBranch:		perseant-lfsv2
8431.1SlukemDescription:	LFS incompatible on-disk data structure changes
8441.1SlukemStatus:		Terminated
8451.1SlukemStart Date:	27 June 2001
8461.1SlukemEnd Date:	16 July 2001
8471.1SlukemBase Tag:	perseant-lfsv2-base
8481.10SsaloMaintainer:	Konrad Schroder <perseant@NetBSD.org>
8491.1SlukemScope:		basesrc/{sbin/*lfs,libexec/lfs_cleanerd,usr.sbin/dumplfs}, syssrc/sys/ufs
8501.1SlukemNotes:		This branch should be short-lived, I expect to merge as soon
8511.1Slukem		as the data structures required for unremove are in and tested.
8521.1Slukem
8531.118SpeterBranch:		peter-altq
8541.118SpeterDescription:	New ALTQ framework:
8551.118Speter		- sync with KAME sources
8561.118Speter		- share mtag/name mapping functions
8571.118Speter		- separate altq + pf attachment
8581.118SpeterStatus:		Terminated; merged to -current
8591.118SpeterStart Date:	March 16, 2006
8601.118SpeterEnd Date:	October 12, 2006
8611.118SpeterBase Tag:	peter-altq-base
8621.118SpeterMaintainer:	Peter Postma <peter@NetBSD.org>,
8631.118Speter		Martin Husemann <martin@NetBSD.org>,
8641.118Speter		Matthias Scheler <tron@NetBSD.org>
8651.118SpeterScope:		dist/pf dist/ipf distrib/sets/lists sys usr.sbin/altq
8661.118SpeterNotes:		Only the first item in the description was finished
8671.118Speter		in this branch.
8681.118Speter
8691.1SlukemBranch:		sommerfeld_i386mp_1
8701.1SlukemDescription:	Multiprocessor support for i386 using Intel MP BIOS.
8711.3SsommerfeStatus:		Terminated; merged to -current
8721.1SlukemStart Date:	21 Feb 2000
8731.2SfvdlEnd Date:	01 Oct 2002
8741.1SlukemBase Tag:	sommerfeld_i386mpbase_1
8751.10SsaloMaintainer:	Bill Sommerfeld <sommerfeld@NetBSD.org>
8761.1SlukemScope:		sys/arch/i386
8771.1SlukemNotes:
8781.1Slukem		Code committed to the branch has booted to multiuser 
8791.1Slukem		on at least one system.
8801.1Slukem
8811.1Slukem		Not guaranteed to compile against mainline since -current
8821.1Slukem		may have changed incompatibly with the last branch update;
8831.1Slukem		use "cvs update -D" to roll-back the rest of the tree to match.
8841.1Slukem
8851.1Slukem		Please get explicit permission from the maintainer 
8861.1Slukem		before each commit, or your changes will be backed out.
8871.1Slukem		Other tags starting with sommerfeld_ are private to 
8881.1Slukem		the developer and are guaranteed to be unstable.
8891.1Slukem		Only the maintainer should move tags.
8901.1Slukem
8911.1Slukem		Note that this branch uses a DIFFERENT scheme for 
8921.1Slukem		synching with the mainline.  the maintainer uses some private
8931.1Slukem		scripts for keeping them in synch; if you make commits 
8941.1Slukem		to the branch to "resynchronize" things, you'll
8951.1Slukem		probably do it wrong; instead, ask the maintainer to
8961.1Slukem		resynchronize things.
8971.1Slukem
8981.1Slukem		See sys/arch/i386/TODO on the branch for a list of known
8991.1Slukem		issues with the branch.
9001.1Slukem
9011.1SlukemBranch:		thorpej-mips-cache
9021.1SlukemDescription:	overhaul MIPS cache support code
9031.1SlukemStatus:		Terminated; merged to -current
9041.1SlukemStart Date:	Oct 23 2001
9051.1SlukemEnd Date:	Nov 14 2001
9061.1SlukemBase Tag:	thorpej-mips-cache-base
9071.1SlukemScope:		syssrc
9081.1SlukemNotes:		This branch needs more debugging, testing, and more
9091.1Slukem		ports need to be converted to the new world order.
9101.1Slukem
9111.1Slukem		The following processors have had cache ops
9121.1Slukem		written:
9131.1Slukem
9141.1Slukem			* R2000/R3000 (cache_r3k) -- light testing,
9151.1Slukem			  needs to be beat on a lot more to make
9161.1Slukem			  sure it's working.
9171.1Slukem
9181.10Ssalo			* R4000/R4400 (cache_r4k) -- mhitch@NetBSD.org
9191.1Slukem			  tracked down a bug, which has been fixed.
9201.1Slukem
9211.1Slukem			  Confirmed working on R4000-with-L2.
9221.1Slukem
9231.1Slukem			  Confirmed working on R4400-no-L2 and
9241.1Slukem			  R4400-with-L2.
9251.1Slukem
9261.10Ssalo			* R4600/R5000 (cache_r5k) -- shin@NetBSD.org
9271.1Slukem			  has committed fixes to this code.
9281.1Slukem
9291.1Slukem			  Confirmed working on R4600 v2 (SGI IP-22 with
9301.1Slukem			  no SysAD L2 cache).
9311.1Slukem
9321.1Slukem			  Confirmed working on RM5260 (Algorithmics P-5064).
9331.1Slukem
9341.10Ssalo			* TX39 (cache_tx39) -- uch@NetBSD.org has
9351.1Slukem			  committed fixes to this code.  Awaiting
9361.1Slukem			  confirmation that it is working properly.
9371.1Slukem
9381.10Ssalo			* R5900 (cache_r5900) -- uch@NetBSD.org has
9391.1Slukem			  written this code and tested it on a
9401.1Slukem			  PlayStation 2.
9411.1Slukem
9421.1Slukem		The following ports have been updated to compile (and
9431.1Slukem		use optimized-for-processor bus_dma routines).  Those
9441.1Slukem		that have been tested and work are marked with [WORKING].
9451.1Slukem
9461.1Slukem			* algor		[WORKING]
9471.1Slukem
9481.1Slukem			* arc		[WORKING]
9491.1Slukem
9501.1Slukem			* pmax		[WORKING]
9511.1Slukem
9521.1Slukem			* playstation2	[WORKING]
9531.1Slukem					Needs optimized bus_dmamap_sync().
9541.1Slukem
9551.1Slukem			* hpcmips	[need verification that this is working]
9561.1Slukem					Needs optimized bus_dmamap_sync().
9571.1Slukem
9581.1Slukem			* sgimips	[WORKING]
9591.1Slukem					Needs optimized bus_dmamap_sync().
9601.1Slukem
9611.1Slukem			* cobalt	[need testing]
9621.1Slukem
9631.1Slukem			* mipsco	[need testing]
9641.1Slukem
9651.1Slukem			* newsmips	[need testing]
9661.1Slukem
9671.1SlukemBranch:		thorpej_scsipi
9681.1SlukemDescription:	SCSI/ATAPI midlayer rewrite.
9691.1SlukemStatus:		Terminated; merged to -current
9701.1SlukemStart Date:
9711.1SlukemEnd Date:	Apr 25 2001
9721.1SlukemBase Tag:	thorpej_scsipi_base, thorpej_scsipi_nbase
9731.10SsaloMaintainer:	Manuel Bouyer <bouyer@NetBSD.org>,
9741.10Ssalo		Jason Thorpe <thorpej@NetBSD.org>
9751.1SlukemScope:		syssrc
9761.1SlukemNotes:		When a change from -current is pulled up please move the
9771.1Slukem		thorpej_scsipi_base tag to the revision you're syncing with.
9781.1Slukem		thorpej_scsipi_nbase is private to maintainer (only
9791.1Slukem		used when syncing the whole branch with HEAD).
9801.1Slukem		Just before the merge, syssrc has been tagged with
9811.1Slukem		thorpej_scsipi_beforemerge
9821.1Slukem
9831.1SlukemBranch:		thorpej-signal
9841.1SlukemDescription:	?
9851.1SlukemStatus:		?
9861.1SlukemStart Date:
9871.1SlukemEnd Date:
9881.1SlukemBase Tag:	thorpej-signal-base
9891.10SsaloMaintainer:	Jason Thorpe <thorpej@NetBSD.org>
9901.1SlukemScope:		kernel
9911.1SlukemNotes:
9921.1Slukem
9931.1SlukemBranch:		thorpej-setroot
9941.1SlukemDescription:	?
9951.1SlukemStatus:		Terminated; merged to -current
9961.1SlukemStart Date:
9971.1SlukemEnd Date:
9981.1SlukemBase Tag:
9991.10SsaloMaintainer:	Jason Thorpe <thorpej@NetBSD.org>
10001.1SlukemScope:		kernel
10011.1SlukemNotes:
10021.1Slukem
10031.84SkardelBranch:		simonb-timecounters
10041.84SkardelDescription:	Port FreeBSD timecounters to NetBSD
10051.85SkardelStatus:		Terminated
10061.84SkardelStart Date:	Sat Feb 04 2006
10071.84SkardelEnd Date:	Wed Jun 07 2006
10081.84SkardelBase Tag:	simonb-timecounters-base
10091.84SkardelMaintainer:	Simon Burge <simonb@NetBSD.org>,
10101.84Skardel		Frank Kardel <kardel@NetBSD.org>
10111.84SkardelScope:		sys, sbin/savecore, usr.bin/vmstat, usr.sbin/ntp
10121.84SkardelNotes:		early (partial conversion) commit to -current
10131.84Skardel		ok'ed by core@ on 20060605 for testing and further
10141.84Skardel		simplified conversion
10151.84Skardel
10161.1SlukemBranch:		wrstuden-devbsize
10171.1SlukemDescription:	Modify buffer cache to deal with different devices having
10181.1Slukem		different block sizes. Also DEV_BSIZE would go away.
10191.1SlukemStatus:		Terminated
10201.1SlukemStart Date:	Aug or Sept 1999
10211.1SlukemEnd Date:	1 Apr 2000
10221.1SlukemBase tag:	wrstuden-devbsize-base
10231.10SsaloMaintainer:	Bill Studenmund <wrstuden@NetBSD.org>
10241.1SlukemScope:		kernel
10251.1SlukemNotes:		No longer active due to lack of time, and introduction
10261.1Slukem		of UBC. In terms of UBC, the primary cache for
10271.1Slukem		file data is the VM cache, which needs to operate
10281.1Slukem		in terms of VM pages. As no existing device has native
10291.1Slukem		pages the same size as our VM pages, there already is
10301.1Slukem		a mapping going on between the VM system and the
10311.1Slukem		underlying blocks. So it would be easier and cleaner
10321.1Slukem		to adjust that to deal w/ different block sizes.
10331.1Slukem		Also with UBC, all i/o is in terms of bytes at an offset
10341.1Slukem		with a certain length, so the exact block size isn't a big
10351.1Slukem		deal.
10361.1Slukem
10371.1Slukem		Any other wrstuden-devbsize tag may (and should) go away.
10381.1Slukem
10391.25SyamtBranch:		yamt-km, yamt-km-doc
10401.19SyamtDescription:	simplify/improve kernel memory management and bootstrap
10411.46SyamtStatus:		Terminated; merged to -current
10421.19SyamtStart Date:	Tue Jan 25 2005
10431.46SyamtEnd Date:	Fri Apr  1 2005
10441.45SyamtBase Tag:	yamt-km-base{,2,3,4}, yamt-km-doc-base
10451.19SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
10461.25SyamtScope:		yamt-km: src/sys
10471.25Syamt		yamt-km-doc: src/share/man/man9/uvm.9
10481.19SyamtNotes:		http://mail-index.NetBSD.org/tech-kern/2004/12/25/0005.html
10491.19Syamt
10501.24Syamt		the followings are per-port status.
10511.24Syamt		(account names mean "tested by".)
10521.24Syamt
10531.20Syamt		works enough to go to multiuser:
10541.45Syamt			alpha, i386, xen (yamt@)
10551.24Syamt			pc532 (simonb@)
10561.28Syamt			alpha, i386, mac68k, macppc, pmax, shark,
10571.34Syamt			    sparc, sparc64, sun3, x68k (chs@)
10581.39Syamt			cobalt, dreamcast, hp300, news68k, newsmips,
10591.39Syamt			    sun3x (tsutsui@)
10601.31Syamt			amiga (mhitch@)
10611.32Syamt			cats, hp700 (skrll@)
10621.45Syamt			xen (bouyer@)
10631.28Syamt
10641.28Syamt		known to have the same problem as trunk:
10651.28Syamt			vax (chs@, stuck while running kvm_mkdb)
10661.24Syamt
10671.24Syamt		known to have a problem:
10681.35Syamt			luna68k (and, if any, other m68k ports which use TTR)
10691.35Syamt			needs to be revisited.
10701.39Syamt			-> for luna68k, although not tested,
10711.39Syamt			   Sysmap has been moved to avoid kva conflict with
10721.39Syamt			   I/O ranges.
10731.20Syamt
10741.20Syamt		buildable:
10751.20Syamt			src/sys/arch/acorn26/conf/GENERIC
10761.20Syamt			src/sys/arch/acorn32/conf/GENERIC
10771.20Syamt			src/sys/arch/algor/conf/P6032
10781.20Syamt			src/sys/arch/alpha/conf/GENERIC
10791.20Syamt			src/sys/arch/alpha/conf/GENERIC.MP
10801.20Syamt			src/sys/arch/amd64/conf/GENERIC
10811.20Syamt			src/sys/arch/amd64/conf/GENERIC.MP
10821.20Syamt			src/sys/arch/amiga/conf/GENERIC
10831.20Syamt			src/sys/arch/arc/conf/GENERIC
10841.20Syamt			src/sys/arch/atari/conf/MILAN-PCIIDE
10851.20Syamt			src/sys/arch/bebox/conf/GENERIC
10861.20Syamt			src/sys/arch/cats/conf/GENERIC
10871.20Syamt			src/sys/arch/cesfic/conf/GENERIC
10881.20Syamt			src/sys/arch/cobalt/conf/GENERIC
10891.20Syamt			src/sys/arch/dreamcast/conf/GENERIC
10901.20Syamt			src/sys/arch/evbarm/conf/TS7200
10911.20Syamt			src/sys/arch/evbppc/conf/WALNUT
10921.20Syamt			src/sys/arch/evbsh3/conf/COMPUTEXEVB
10931.20Syamt			src/sys/arch/evbsh5/conf/CAYMAN64
10941.20Syamt			src/sys/arch/hp300/conf/GENERIC
10951.20Syamt			src/sys/arch/hp700/conf/GENERIC
10961.20Syamt			src/sys/arch/hpcarm/conf/JORNADA728
10971.20Syamt			src/sys/arch/hpcmips/conf/GENERIC
10981.20Syamt			src/sys/arch/hpcsh/conf/GENERIC
10991.20Syamt			src/sys/arch/hpcsh/conf/HPW650PA
11001.20Syamt			src/sys/arch/i386/conf/GENERIC
11011.20Syamt			src/sys/arch/i386/conf/GENERIC.MP
11021.40Syamt			src/sys/arch/i386/conf/XEN0
11031.40Syamt			src/sys/arch/i386/conf/XENU
11041.20Syamt			src/sys/arch/ibmnws/conf/GENERIC
11051.20Syamt			src/sys/arch/iyonix/conf/GENERIC
11061.20Syamt			src/sys/arch/luna68k/conf/GENERIC
11071.20Syamt			src/sys/arch/mac68k/conf/GENERIC
11081.20Syamt			src/sys/arch/macppc/conf/GENERIC
11091.20Syamt			src/sys/arch/macppc/conf/GENERIC.MP
11101.20Syamt			src/sys/arch/mipsco/conf/GENERIC
11111.40Syamt			src/sys/arch/mmeye/conf/GENERIC
11121.20Syamt			src/sys/arch/mvme68k/conf/GENERIC
11131.20Syamt			src/sys/arch/netwinder/conf/GENERIC
11141.20Syamt			src/sys/arch/news68k/conf/GENERIC
11151.20Syamt			src/sys/arch/newsmips/conf/GENERIC
11161.20Syamt			src/sys/arch/next68k/conf/GENERIC
11171.20Syamt			src/sys/arch/ofppc/conf/GENERIC
11181.20Syamt			src/sys/arch/pc532/conf/GENERIC
11191.20Syamt			src/sys/arch/pmax/conf/GENERIC
11201.20Syamt			src/sys/arch/prep/conf/GENERIC
11211.20Syamt			src/sys/arch/sandpoint/conf/GENERIC
11221.20Syamt			src/sys/arch/sbmips/conf/GENERIC
11231.20Syamt			src/sys/arch/sgimips/conf/GENERIC32_IP3x
11241.20Syamt			src/sys/arch/shark/conf/GENERIC
11251.20Syamt			src/sys/arch/sparc/conf/GENERIC
11261.20Syamt			src/sys/arch/sparc/conf/GENERIC.MP
11271.20Syamt			src/sys/arch/sparc64/conf/GENERIC
11281.20Syamt			src/sys/arch/sparc64/conf/GENERIC.MP
11291.20Syamt			src/sys/arch/sun2/conf/GENERIC
11301.20Syamt			src/sys/arch/sun3/conf/GENERIC
11311.20Syamt			src/sys/arch/vax/conf/GENERIC
11321.20Syamt			src/sys/arch/vax/conf/GENERIC.MP
11331.20Syamt			src/sys/arch/x68k/conf/GENERIC
11341.20Syamt
11351.42Syamt			src/sys/arch/playstation2/conf/GENERIC
11361.42Syamt
11371.97SyamtBranch:		yamt-pdpolicy
11381.97SyamtDescription:	play with page replacement policy
11391.97Syamt		- separate page replacement policy from the rest of kernel
11401.97Syamt		- implement alternative replacement policy
11411.97Syamt		- related read-ahead adjustment?
11421.97SyamtStatus:		Terminated; merged to -current
11431.97SyamtStart Date:	Sun Mar  5 2006
11441.97SyamtEnd Date:	Sat Sep 16 2006
11451.97SyamtBase Tag:	yamt-pdpolicy-base9
11461.97SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
11471.97SyamtScope:		src/sys  (src/common is tagged but not branched)
11481.97SyamtNotes:		
11491.97Syamt
11501.54SyamtBranch:		yamt-readahead
11511.54SyamtDescription:	play with file readahead
11521.58SyamtStatus:		Terminated; merged to -current
11531.54SyamtStart Date:	Mon Nov 14 2005
11541.58SyamtEnd Date:	Wed Nov 30 2005
11551.57SyamtBase Tag:	yamt-readahead-base3
11561.54SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
11571.54SyamtScope:		src/sys
11581.54SyamtNotes:		
11591.54Syamt
11601.60SyamtBranch:		yamt-uio_vmspace
11611.60SyamtDescription:	uio_lwp/uio_segflg -> uio_vmspace
11621.67SyamtStatus:		Terminated; merged to -current
11631.60SyamtStart Date:	Mon Dec 31 2005
11641.67SyamtEnd Date:	Wed Mar  1 2006
11651.66SyamtBase Tag:	yamt-uio_vmspace-base5
11661.60SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
11671.60SyamtScope:		src/sys
11681.60SyamtNotes:		
11691.60Syamt
11701.151SyamtBranch:		yamt-splraiseipl
11711.151SyamtDescription:	finish implementing splraiseipl (and makeiplcookie).
11721.151Syamt		http://mail-index.NetBSD.org/tech-kern/2006/07/01/0000.html
11731.151Syamt
11741.151Syamt		- completes workqueue(9) and netbt.
11751.151Syamt		- fix PR/33218.
11761.151Syamt
11771.151SyamtStatus:		Terminated; merged to -current
11781.151SyamtStart Date:	Mon Sep 18 2006
11791.151SyamtEnd Date:	Fri Dec 22 2006
11801.151SyamtBase Tag:	yamt-splraiseipl-base5
11811.151SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
11821.151SyamtScope:		src/sys  (src/common is tagged but not branched)
11831.151SyamtNotes:		
11841.151Syamt		tested (by who):
11851.151Syamt			alpha		(yamt)
11861.151Syamt			alpha		(pavel)
11871.151Syamt			amd64		(reported privately)
11881.151Syamt			cobalt		(tsutsui)
11891.151Syamt			ews4800mips	(tsutsui)
11901.151Syamt			hp300		(tsutsui)
11911.151Syamt			hpcarm		(reported privately)
11921.151Syamt			i386		(yamt)
11931.151Syamt			macppc		(tsutsui)
11941.151Syamt			news68k		(tsutsui)
11951.151Syamt			sgimips(IP32)	(tsutsui)
11961.151Syamt			sparc(sun4c)	(tsutsui)
11971.151Syamt			sun2		(tsutsui)
11981.151Syamt			sun3		(tsutsui)
11991.151Syamt			sun3x		(tsutsui)
12001.151Syamt			xen		(yamt)
12011.151Syamt
12021.151Syamt		compile-tested:
12031.151Syamt			acorn26
12041.151Syamt			acorn32
12051.151Syamt			algor
12061.151Syamt			amiga
12071.151Syamt			arc
12081.151Syamt			atari
12091.151Syamt			bebox
12101.151Syamt			cats
12111.151Syamt			cesfic
12121.151Syamt			dreamcast
12131.151Syamt			evbarm
12141.151Syamt			evbmips
12151.151Syamt			evbppc(marvell)
12161.151Syamt			evbppc(ibm4xx)
12171.151Syamt			evbsh3
12181.151Syamt			hp700
12191.151Syamt			hpcmips
12201.151Syamt			hpcsh
12211.151Syamt			ia64
12221.151Syamt			ibmnws
12231.151Syamt			iyonix
12241.151Syamt			landisk
12251.151Syamt			luna68k
12261.151Syamt			mac68k
12271.151Syamt			mmeye
12281.151Syamt			mvme68k
12291.151Syamt			mvmeppc
12301.151Syamt			mipsco
12311.151Syamt			netwinder
12321.151Syamt			newsmips
12331.151Syamt			next68k
12341.151Syamt			ofppc
12351.151Syamt			pc532
12361.151Syamt			pmax
12371.151Syamt			pmppc
12381.151Syamt			prep
12391.151Syamt			sandpoint
12401.151Syamt			sbmips
12411.151Syamt			shark
12421.151Syamt			sparc
12431.151Syamt			sparc64
12441.151Syamt			vax
12451.151Syamt			x68k
12461.151Syamt			zaurus
12471.151Syamt
12481.151Syamt		not tested:
12491.151Syamt			pdp10 (i don't know how to build)
12501.151Syamt			sh5 (not buildable with an unrelated problem.)
12511.151Syamt
12521.151Syamt    compile  CAYMAN64/netbsd32_sa.o
12531.151Syamt    cc1: warnings being treated as errors
12541.151Syamt    /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c: In function 'netbsd32_sa_ucsp':
12551.151Syamt    /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c:126: warning: implicit declaration of function '_UC_MACHINE32_SP'
12561.151Syamt    --- netbsd32_sa.o ---
12571.151Syamt    *** [netbsd32_sa.o] Error code 1
12581.151Syamt    1 error
12591.151Syamt
12601.151Syamt		notyet:
12611.151Syamt			amigappc
12621.151Syamt			playstation2
12631.151Syamt
12641.79SbriggsBranch:		yamt-vop
12651.79SbriggsDescription:	remove several VOPs
12661.79SbriggsStatus:		Terminated; merged to -current
12671.79SbriggsStart Date:	Wed Oct 19 2005
12681.79SbriggsEnd Date:	Wed Nov  2 2005
12691.79SbriggsBase Tag:	yamt-vop-base3
12701.68SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
12711.68SyamtScope:		src/sys
12721.79SbriggsNotes:		http://mail-index.NetBSD.org/tech-kern/2005/09/27/0000.html
12731.71Speter
12741.98SgdamoreBranch:		gdamore-uart
12751.98SgdamoreDescription:	Add register table support to com driver.
12761.98SgdamoreStatus:		Active
12771.98SgdamoreStart Date:	14 June 2006
12781.98SgdamoreEnd Date:	13 July 2006
12791.98SgdamoreBase Tag:	gdamore-uart-base
12801.98SgdamoreMaintainer:	Garrett D'Amore <gdamore@NetBSD.org>
12811.98SgdamoreScope:		kernel
12821.98SgdamoreNotes:		Results in consolidation of Alchemy (mips/dev/alchemy/aucom.c)
12831.98Sgdamore		com support, and also removes a nasty hack from Atheros com.
12841.98Sgdamore
12851.79Sbriggs########################################################################
12861.1Slukem# Other:
12871.79Sbriggs########################################################################
12881.1Slukem
12891.1SlukemBranch:		magnum
12901.1SlukemDescription:	?
12911.1SlukemStatus:		?
12921.1SlukemStart Date:
12931.1SlukemEnd Date:
12941.1SlukemBase Tag:	magnum-base
12951.1SlukemMaintainer:	?
12961.1SlukemScope:		kernel
12971.1SlukemNotes:
12981.69Selad
1299