BRANCHES revision 1.172
11.172Smatt#	$NetBSD: BRANCHES,v 1.172 2007/04/08 03:53:40 matt 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.154Sad		4. implement interrupt LWPs.
4771.155Srmind		5. make scheduler(s) modular.
4781.153Syamt
4791.153SyamtStatus:		Active
4801.153SyamtStart Date:	Fri Feb 17 2007
4811.153SyamtEnd Date:	
4821.168SyamtBase Tag:	yamt-idlelwp-base4
4831.153SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
4841.153SyamtScope:		src/sys  (src/common is tagged but not branched)
4851.153SyamtNotes:		
4861.166Srmind		Status of ports (minimal goals):
4871.167Syamt		  alpha			[ Done,
4881.167Syamt					  UP tested, MP not tested ]
4891.167Syamt		  i386			[ Done, tested ]
4901.167Syamt		  amd64			[ Done, tested ]
4911.167Syamt		  mips			[ WIP ]
4921.171Srmind		  sparc			[ WIP ]
4931.171Srmind		  sparc64		[ WIP ]
4941.170Sskrll		  arm			[ Done.
4951.170Sskrll					  SA1 tested. ]
4961.172Smatt		  macppc/powerpc	[ Done, OEA tested ]
4971.167Syamt		  hppa			[ WIP ]
4981.169Suwe		  sh3			[ Done, tested ]
4991.172Smatt		  vax			[ Done, UP tested, MP untested ]
5001.166Srmind
5011.166Srmind		How to adapt a port?
5021.165Syamt
5031.165Syamt		- unify cpu_switch, cpu_exit, cpu_switchto into
5041.165Syamt		  a single cpu_switchto.  see cpu_switchto.9.
5051.165Syamt
5061.165Syamt		- implement cpu_idle.  see cpu_idle.9.
5071.165Syamt
5081.165Syamt		- add a flag argument to cpu_need_resched.
5091.165Syamt		  handle RESCHED_IMMED flag, which means "cause a preemption
5101.165Syamt		  as soon as possible."  eg. in the case of MULTIPROCESSOR,
5111.165Syamt		  send an IPI to the target cpu.
5121.165Syamt
5131.165Syamt		- "curlwp == NULL" is not a valid check for idle state anymore.
5141.165Syamt		  use "(curlwp->l_flag & LW_IDLE) != 0" instead.  curlwp is
5151.165Syamt		  almost always non-NULL, with exceptions like early on boot.
5161.165Syamt
5171.165Syamt		- remove idle pcbs.
5181.165Syamt
5191.167Syamt		- (if MULTIPROCESSOR) tweak processor trampoline code.
5201.167Syamt
5211.167Syamt		- (if MULTIPROCESSOR) call mi_cpu_attach when attaching
5221.167Syamt		  secondary processors.
5231.165Syamt
5241.165Syamt		- (if schedhz!=0) call schedclock regardless of the value of
5251.165Syamt		  curlwp.
5261.165Syamt
5271.165Syamt		- of course, update MD users of scheduler/switching API.
5281.153Syamt
5291.79SbriggsBranch:		yamt-lazymbuf
5301.79SbriggsDescription:	implement and evaluate lazy mapping of mbuf external data pages
5311.92Syamt		it's intended as the first step of larger changes.
5321.92Syamt			1. support operations (esp. bus_dma load) on
5331.92Syamt			   unmapped mbuf.
5341.92Syamt			2. unify mbuf and buf.
5351.92Syamt			   (or, at least some parts of them)
5361.92Syamt			3. then it should be trivial to implement
5371.92Syamt			   i/o coalescing, etc.
5381.79SbriggsStatus:		Active
5391.79SbriggsStart Date:	Wed Jul  6 2005
5401.79SbriggsEnd Date:	
5411.157SyamtBase Tag:	yamt-lazymbuf-base4
5421.79SbriggsMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
5431.152SyamtScope:		src/sys  (src/common is tagged but not branched)
5441.79SbriggsNotes:		
5451.79Sbriggs
5461.163SreinoudBranch:		reinoud-bufcleanup
5471.164SreinoudDescription:	implement and evaluate struct buf usage cleanup strategies.
5481.164Sreinoud		Ideas currently in mind (preference for b):
5491.164Sreinoud		a)
5501.163Sreinoud			1. use of bio_ops per buffer.
5511.163Sreinoud			2. allow chaining/overloading of functions in bio_ops
5521.163Sreinoud			   and provide some private context.
5531.163Sreinoud			3. extend the bio_ops with commenly used functionality
5541.163Sreinoud			   like pending action counting, custom context passing,
5551.163Sreinoud			   last minute processing of buffer data, buffer cache
5561.163Sreinoud			   etc.
5571.163Sreinoud			4. investigate the use of the kcont()
5581.163Sreinoud			   continuation-passing framework for async io
5591.163Sreinoud			   completion notification for bufs
5601.164Sreinoud			...
5611.164Sreinoud		b)
5621.164Sreinoud			1. all sequencing use of B_CALL replaced by
5631.164Sreinoud			   device-threads, if possible generic code around BUFQ
5641.164Sreinoud			2. possibly use kcont() for async IO finished signalling
5651.164Sreinoud			3. counter of pending and queued actions requestable
5661.164Sreinoud			   by IOCTL interface?
5671.164Sreinoud			4. implement `last minute buffer fixup' calls and maybe
5681.164Sreinoud			   even finished I/O calls as vnode operations
5691.164Sreinoud			...
5701.163SreinoudStatus:		Active
5711.163SreinoudStart Date:	Thu Mar 15 2007
5721.163SreinoudEnd Date:
5731.163SreinoudBase Tag:	reinoud-bufcleanup-base
5741.163SreinoudMaintainer:	Reinoud Zandijk <reinoud@NetBSD.org>
5751.163SreinoudScope:		src/sys and src/common
5761.163SreinoudNotes:		Used as expiriment sandbox and if successful hopefully one day
5771.163Sreinoud		to be intergrated.
5781.163Sreinoud
5791.79Sbriggs
5801.79Sbriggs########################################################################
5811.79Sbriggs# Individual developers' branches (Terminated):
5821.79Sbriggs########################################################################
5831.79Sbriggs
5841.1SlukemBranch:		bouyer-scsipi
5851.1SlukemDescription:	Integration of atapi support
5861.1SlukemStatus:		Terminated
5871.1SlukemStart Date:
5881.1SlukemEnd Date:
5891.1SlukemBase Tag:
5901.10SsaloMaintainer:	Manuel Bouyer <bouyer@NetBSD.org>
5911.1SlukemScope:		kernel
5921.1SlukemNotes:		Superseded by thorpej_scsipi
5931.1Slukem
5941.79SbriggsBranch:		bouyer-xen2
5951.79SbriggsDescription:	update xen port to xen 2.0, with support for domain0 operations
5961.79SbriggsStatus:		Terminated
5971.79SbriggsStart Date:	Dec 13 2004
5981.79SbriggsEnd Date:	Mar 10 2005
5991.79SbriggsBase Tag:	netbsd-2-base
6001.79SbriggsMaintainer:	Manuel Bouyer <bouyer@NetBSD.org>
6011.79SbriggsScope:		src/sys/arch/xen
6021.79SbriggsNotes:
6031.79Sbriggs
6041.87SchapBranch: 	chap-midi
6051.87SchapDescription:	Renovation of MIDI support
6061.87SchapStatus: 	Terminated; merged to -current
6071.87SchapStart Date:	19 May 2006
6081.87SchapEnd Date:	30 Jun 2006
6091.87SchapBase Tag:	chap-midi-base
6101.87SchapMaintainer:	Chapman Flack <chap@NetBSD.org>
6111.87SchapScope:		sys, share/man, usr.bin
6121.87SchapNotes:
6131.87Schap
6141.1SlukemBranch:		chs-ubc
6151.44SchsDescription:	Unified Buffer Cache
6161.44SchsStatus:		Terminated
6171.1SlukemStart Date:
6181.1SlukemEnd Date:
6191.1SlukemBase Tag:	chs-ubc-base
6201.10SsaloMaintainer:	Chuck Silvers <chs@NetBSD.org>
6211.1SlukemScope:		kernel
6221.1SlukemNotes:
6231.1Slukem
6241.1SlukemBranch:		chs-ubc2
6251.44SchsDescription:	 Unified Buffer Cache
6261.44SchsStatus:		Terminated; merged to -current
6271.1SlukemStart Date:
6281.1SlukemEnd Date:
6291.1SlukemBase Tag:	chs-ubc2-base, chs-ubc2-newbase
6301.10SsaloMaintainer:	Chuck Silvers <chs@NetBSD.org>
6311.1SlukemScope:		kernel
6321.1SlukemNotes:
6331.1Slukem
6341.1SlukemBranch:		cjs-build-against-obj-dir
6351.1SlukemDescription:	?
6361.1SlukemStatus:		?
6371.1SlukemStart Date:
6381.1SlukemEnd Date:
6391.1SlukemBase Tag:
6401.10SsaloMaintainer:	Curt Sampson <cjs@NetBSD.org>
6411.1SlukemScope:		Entire tree.
6421.1SlukemNotes:
6431.1Slukem
6441.1SlukemBranch:		eeh-paddr_t
6451.44SchsDescription:	use separate types for virtual vs. physical addresses
6461.44SchsStatus:		Terminated; merged to -current
6471.1SlukemStart Date:
6481.1SlukemEnd Date:
6491.1SlukemBase Tag:	eeh-paddr_t-base
6501.10SsaloMaintainer:	Eduardo Horvath <eeh@NetBSD.org>
6511.1SlukemScope:		kernel
6521.44SchsNotes:		This is needed to support 32-bit kernels on sparc64.
6531.1Slukem
6541.79SbriggsBranch:		elad-kernelauth
6551.79SbriggsDescription:	Native NetBSD implementation of Apple's kernel authorization
6561.79Sbriggs		based on TN2127. This is a "clean-room" implementation to
6571.79Sbriggs		avoid any licensing issues.
6581.79SbriggsStatus:		Terminated; merged to -current
6591.79SbriggsStart Date:	Tue Mar	 7 2006
6601.79SbriggsEnd Date:	Mon May 15 2006
6611.79SbriggsBase Tag:	elad-kernelauth-base
6621.79SbriggsMaintainer:	Elad Efrat <elad@NetBSD.org>
6631.79SbriggsScope:		src/sys, src/share/man/man9/Makefile,
6641.79Sbriggs		src/share/man/man9/kauth.h, src/distrib/sets/lists/comp/mi
6651.79SbriggsNotes:
6661.79Sbriggs
6671.1SlukemBranch:		fvdl-softdep
6681.1SlukemDescription:	FFS soft dependencies
6691.44SchsStatus:		Terminated; merged to -current
6701.1SlukemStart Date:
6711.1SlukemEnd Date:
6721.1SlukemBase Tag:	fvdl-softdep-base
6731.10SsaloMaintainer:	Frank van der Linden <fvdl@NetBSD.org>
6741.1SlukemScope:		kernel
6751.1SlukemNotes:
6761.1Slukem
6771.1SlukemBranch:		gehenna-devsw
6781.1SlukemDescription:	auto-generation of devsw table
6791.1SlukemStatus:		Terminated
6801.1SlukemStart Date:	16 May 2002
6811.1SlukemEnd Date:	6 Sep 2002
6821.1SlukemBase Tag:	gehenna-devsw-base
6831.10SsaloMaintainer:	MAEKAWA Masahide <gehenna@NetBSD.org>
6841.1SlukemScope:		syssrc
6851.1SlukemNotes:		The goal is to get rid of the existing device switch tables in
6861.1Slukem		port-dependent conf.c and to generate them dynamically by
6871.1Slukem		config(8).
6881.8Sgmcgarry
6891.1SlukemBranch:		is-newarp
6901.23SisDescription:	ARP for non-Ethernet
6911.23SisStatus:		Terminated; merged before NetBSD 1.3
6921.23SisStart Date:	1996/10/13
6931.23SisEnd Date:	1997/03/15
6941.1SlukemBase Tag:	is-newarp-base
6951.10SsaloMaintainer:	Ignatios Souvatzis <is@NetBSD.org>
6961.1SlukemScope:		kernel
6971.1SlukemNotes:
6981.1Slukem
6991.1SlukemBranch:		kenh-if-detach
7001.1SlukemDescription:	Interface detach support.
7011.1SlukemStatus:		?
7021.1SlukemStart Date:
7031.1SlukemEnd Date:
7041.1SlukemBase Tag:	kenh-if-detach-base
7051.10SsaloMaintainer:	Ken Hornstein <kenh@NetBSD.org>
7061.1SlukemScope:		kernel
7071.1SlukemNotes:
7081.1Slukem
7091.16SkentBranch:		kent-audio1
7101.16SkentDescription:	Audio converter pipeline
7111.18SkentStatus:		Terminated; merged to -current
7121.16SkentStart Date:	Tue Dec  7 2004
7131.17SkentEnd Date:	Tue Jan 11 2005
7141.17SkentBase Tag:	kent-audio1-base
7151.17SkentMaintainer:	TAMURA Kent <kent@NetBSD.org>
7161.17SkentScope:		kernel (audio device drivers)
7171.17SkentNotes:		http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html
7181.17Skent		Please consult with the maintainer before committing
7191.17Skent		to this branch.
7201.17Skent
7211.1SlukemBranch:		kqueue
7221.1SlukemDescription:	kqueue kernel event notification mechanism (from FreeBSD)
7231.5SjdolecekStatus:		Terminated; merged to -current
7241.1SlukemStart Date:	Tue Jul 10 23:08:38 EST 2001
7251.5SjdolecekEnd Date:	Tue Oct 24 09:14:14 GMT 2002
7261.1SlukemBase Tag:	kqueue-base
7271.1SlukemMaintainer:	Jaromir Dolecek <jdolecek@NetBSD.org>
7281.1SlukemScope:		kernel, libc/sys, share/man/man9, usr.bin/fstat
7291.1SlukemNotes:		Integration of FreeBSD's kqueue(2) mechanism, with various
7301.1Slukem		local internal changes to better suit NetBSD, and
7311.1Slukem		enhancements such as looking up filters by name or
7321.1Slukem		number, and dynamic registration of "user" filters.
7331.1Slukem		The work is complete as is, but is awaiting more
7341.1Slukem		feedback from various kernel gurus before going mainline.
7351.11Sskrll
7361.11SskrllBranch:		ktrace-lwp
7371.11SskrllDescription:	ktrace support for lwp ids.
7381.59SskrllStatus:		Terminated; merged to -current
7391.11SskrllStart Date:	Wed Jul  2 15:27:30 UTC 2003
7401.59SskrllEnd Date:	Sun Dec 11 12:25:29 UTC 2005
7411.11SskrllBase Tag:	ktrace-lwp-base
7421.12SgrantMaintainer:	Darren Reed <darrenr@NetBSD.org>
7431.11SskrllScope:		sys
7441.11SskrllNotes:		
7451.1Slukem
7461.1SlukemBranch:		marc-pcmcia
7471.1SlukemDescription:	PCMCIA support
7481.1SlukemStatus:		Terminated; merged to -current
7491.1SlukemStart Date:
7501.1SlukemEnd Date:
7511.1SlukemBase Tag:	marc-pcmcia-base, marc-pcmcia-bp
7521.10SsaloMaintainer:	Marc Horowitz <marc@NetBSD.org>
7531.1SlukemScope:		kernel
7541.1SlukemNotes:
7551.1Slukem
7561.1SlukemBranch:		minoura_x68k_bus_h
7571.1SlukemDescription:	bus_space(9) and bus_dma(9) implementation for x68k
7581.1SlukemStatus:		Terminated; merged to -current
7591.1SlukemStart Date:	23 Dec 1998
7601.1SlukemEnd Date:	16 Mar 1999
7611.1SlukemBase Tag:	minoura_x68k_bus_h-base
7621.10SsaloMaintainer:	Minoura Makoto <minoura@NetBSD.org>
7631.1SlukemScope:		sys/arch/x68k
7641.1SlukemNotes:
7651.1Slukem
7661.1SlukemBranch:		minoura-xpg4dl
7671.1SlukemDescription:	Citrus Project locale subsystem
7681.1SlukemStatus:		Terminated; (partly) merged to -current
7691.1SlukemStart Date:	28 March 2000
7701.1SlukemEnd Date:
7711.1SlukemBase Tag:	minoura-xpg4dl-base
7721.10SsaloMaintainer:	Minoura Makoto <minoura@NetBSD.org>
7731.1SlukemScope:		basesrc, syssrc, sharesrc
7741.1SlukemNotes:		Citrus Project is developing dynamically-loadable, codeset-
7751.1Slukem		independent locale subsystem.  Part of the implementation
7761.1Slukem		(LC_CTYPE) called XPG4DL is now integrated to -current.
7771.1Slukem
7781.160SmjfBranch:		mjf-ufs-trans
7791.160SmjfDescription:	filesystem transactions for ufs
7801.160SmjfStatus:		Active
7811.160SmjfStart Date:	12 March 2007
7821.160SmjfEnd Date:
7831.160SmjfBase Tag:	mjf-ufs-trans-base
7841.160SmjfMaintainer:	Matt Fleming <mjf@NetBSD.org>
7851.160SmjfScope:		kernel
7861.160SmjfNotes:
7871.160Smjf
7881.1SlukemBranch:		mrg-vm-swap
7891.49SmrgDescription:	dynamic swap allocation, swap-to-files support
7901.49SmrgStatus:		Terminated; abondoned for mrg-vm-swap2
7911.49SmrgStart Date:	12 February 1997
7921.49SmrgEnd Date:	15 March 1997
7931.49SmrgBase Tag:	[none]
7941.49SmrgMaintainer:	Matthew R. Green <mrg@NetBSD.org>
7951.49SmrgScope:		kernel
7961.49SmrgNotes:
7971.49Smrg
7981.49SmrgBranch:		mrg-vm-swap2
7991.49SmrgDescription:	dynamic swap allocation, swap-to-files support
8001.49SmrgStatus:		Terminated; merged to -current
8011.49SmrgStart Date:	4 May 1997
8021.49SmrgEnd Date:	12 June 1997
8031.49SmrgBase Tag:	mrg-vm-swap2-base
8041.10SsaloMaintainer:	Matthew R. Green <mrg@NetBSD.org>
8051.1SlukemScope:		kernel
8061.1SlukemNotes:
8071.1Slukem
8081.1SlukemBranch:		nathanw_sa
8091.1SlukemDescription:	Scheduler activations
8101.44SchsStatus:		Terminated; merged to -current
8111.1SlukemStart Date:	5 March 2001
8121.9SthorpejEnd Date:	18 January 2003
8131.1SlukemBase Tag:	nathanw_sa_base
8141.10SsaloMaintainer:	Nathan Williams <nathanw@NetBSD.org>
8151.1SlukemScope:		kernel, libc, libkvm, libpthread, libpthread_dbg, include, 
8161.1Slukem		bin/ps usr.bin/systat usr.bin/top usr.bin/w
8171.1Slukem		gnu/dist/toolchain/gdb gnu/usr.bin/gdb
8181.1SlukemNotes:		The idea of scheduler activations is described in the
8191.1Slukem		classic paper by Anderson et al., in ACM Transactions
8201.1Slukem		a on Computer Systems volume 10 issue 1 (1992),which
8211.1Slukem		can be found at
8221.1Slukem		http://www.acm.org/pubs/citations/journals/tocs/1992-10-1/p53-anderson/
8231.1Slukem		Many ideas in the implementation are based on the
8241.1Slukem		implementation of scheduler activations added to Mach
8251.1Slukem		3.0 and described by Davis et al. in the University of
8261.1Slukem		Washington CS tech report 92-08-93, which can be found
8271.1Slukem		at
8281.1Slukem		ftp://ftp.cs.washington.edu/tr/1992/08/UW-CSE-92-08-03.PS.Z
8291.1Slukem
8301.1Slukem		My USENIX paper on the subject can be found at
8311.1Slukem		http://web.mit.edu/nathanw/www/usenix/
8321.1Slukem
8331.1Slukem		Please consult with the maintainer before committing
8341.1Slukem		to this branch.
8351.1Slukem		Other tags starting with nathanw_sa reserved for
8361.1Slukem		branch management and are not guaranteed to be stable.
8371.9Sthorpej
8381.9Sthorpej		Trunk tagged with "nathanw_sa_before_merge" prior to
8391.9Sthorpej		merging branch down to trunk.  Branch tagged with
8401.9Sthorpej		"nathanw_sa_end" to indicate the ending revision of
8411.9Sthorpej		the branch.
8421.1Slukem
8431.1SlukemBranch:		perseant-lfsv2
8441.1SlukemDescription:	LFS incompatible on-disk data structure changes
8451.1SlukemStatus:		Terminated
8461.1SlukemStart Date:	27 June 2001
8471.1SlukemEnd Date:	16 July 2001
8481.1SlukemBase Tag:	perseant-lfsv2-base
8491.10SsaloMaintainer:	Konrad Schroder <perseant@NetBSD.org>
8501.1SlukemScope:		basesrc/{sbin/*lfs,libexec/lfs_cleanerd,usr.sbin/dumplfs}, syssrc/sys/ufs
8511.1SlukemNotes:		This branch should be short-lived, I expect to merge as soon
8521.1Slukem		as the data structures required for unremove are in and tested.
8531.1Slukem
8541.118SpeterBranch:		peter-altq
8551.118SpeterDescription:	New ALTQ framework:
8561.118Speter		- sync with KAME sources
8571.118Speter		- share mtag/name mapping functions
8581.118Speter		- separate altq + pf attachment
8591.118SpeterStatus:		Terminated; merged to -current
8601.118SpeterStart Date:	March 16, 2006
8611.118SpeterEnd Date:	October 12, 2006
8621.118SpeterBase Tag:	peter-altq-base
8631.118SpeterMaintainer:	Peter Postma <peter@NetBSD.org>,
8641.118Speter		Martin Husemann <martin@NetBSD.org>,
8651.118Speter		Matthias Scheler <tron@NetBSD.org>
8661.118SpeterScope:		dist/pf dist/ipf distrib/sets/lists sys usr.sbin/altq
8671.118SpeterNotes:		Only the first item in the description was finished
8681.118Speter		in this branch.
8691.118Speter
8701.1SlukemBranch:		sommerfeld_i386mp_1
8711.1SlukemDescription:	Multiprocessor support for i386 using Intel MP BIOS.
8721.3SsommerfeStatus:		Terminated; merged to -current
8731.1SlukemStart Date:	21 Feb 2000
8741.2SfvdlEnd Date:	01 Oct 2002
8751.1SlukemBase Tag:	sommerfeld_i386mpbase_1
8761.10SsaloMaintainer:	Bill Sommerfeld <sommerfeld@NetBSD.org>
8771.1SlukemScope:		sys/arch/i386
8781.1SlukemNotes:
8791.1Slukem		Code committed to the branch has booted to multiuser 
8801.1Slukem		on at least one system.
8811.1Slukem
8821.1Slukem		Not guaranteed to compile against mainline since -current
8831.1Slukem		may have changed incompatibly with the last branch update;
8841.1Slukem		use "cvs update -D" to roll-back the rest of the tree to match.
8851.1Slukem
8861.1Slukem		Please get explicit permission from the maintainer 
8871.1Slukem		before each commit, or your changes will be backed out.
8881.1Slukem		Other tags starting with sommerfeld_ are private to 
8891.1Slukem		the developer and are guaranteed to be unstable.
8901.1Slukem		Only the maintainer should move tags.
8911.1Slukem
8921.1Slukem		Note that this branch uses a DIFFERENT scheme for 
8931.1Slukem		synching with the mainline.  the maintainer uses some private
8941.1Slukem		scripts for keeping them in synch; if you make commits 
8951.1Slukem		to the branch to "resynchronize" things, you'll
8961.1Slukem		probably do it wrong; instead, ask the maintainer to
8971.1Slukem		resynchronize things.
8981.1Slukem
8991.1Slukem		See sys/arch/i386/TODO on the branch for a list of known
9001.1Slukem		issues with the branch.
9011.1Slukem
9021.1SlukemBranch:		thorpej-mips-cache
9031.1SlukemDescription:	overhaul MIPS cache support code
9041.1SlukemStatus:		Terminated; merged to -current
9051.1SlukemStart Date:	Oct 23 2001
9061.1SlukemEnd Date:	Nov 14 2001
9071.1SlukemBase Tag:	thorpej-mips-cache-base
9081.1SlukemScope:		syssrc
9091.1SlukemNotes:		This branch needs more debugging, testing, and more
9101.1Slukem		ports need to be converted to the new world order.
9111.1Slukem
9121.1Slukem		The following processors have had cache ops
9131.1Slukem		written:
9141.1Slukem
9151.1Slukem			* R2000/R3000 (cache_r3k) -- light testing,
9161.1Slukem			  needs to be beat on a lot more to make
9171.1Slukem			  sure it's working.
9181.1Slukem
9191.10Ssalo			* R4000/R4400 (cache_r4k) -- mhitch@NetBSD.org
9201.1Slukem			  tracked down a bug, which has been fixed.
9211.1Slukem
9221.1Slukem			  Confirmed working on R4000-with-L2.
9231.1Slukem
9241.1Slukem			  Confirmed working on R4400-no-L2 and
9251.1Slukem			  R4400-with-L2.
9261.1Slukem
9271.10Ssalo			* R4600/R5000 (cache_r5k) -- shin@NetBSD.org
9281.1Slukem			  has committed fixes to this code.
9291.1Slukem
9301.1Slukem			  Confirmed working on R4600 v2 (SGI IP-22 with
9311.1Slukem			  no SysAD L2 cache).
9321.1Slukem
9331.1Slukem			  Confirmed working on RM5260 (Algorithmics P-5064).
9341.1Slukem
9351.10Ssalo			* TX39 (cache_tx39) -- uch@NetBSD.org has
9361.1Slukem			  committed fixes to this code.  Awaiting
9371.1Slukem			  confirmation that it is working properly.
9381.1Slukem
9391.10Ssalo			* R5900 (cache_r5900) -- uch@NetBSD.org has
9401.1Slukem			  written this code and tested it on a
9411.1Slukem			  PlayStation 2.
9421.1Slukem
9431.1Slukem		The following ports have been updated to compile (and
9441.1Slukem		use optimized-for-processor bus_dma routines).  Those
9451.1Slukem		that have been tested and work are marked with [WORKING].
9461.1Slukem
9471.1Slukem			* algor		[WORKING]
9481.1Slukem
9491.1Slukem			* arc		[WORKING]
9501.1Slukem
9511.1Slukem			* pmax		[WORKING]
9521.1Slukem
9531.1Slukem			* playstation2	[WORKING]
9541.1Slukem					Needs optimized bus_dmamap_sync().
9551.1Slukem
9561.1Slukem			* hpcmips	[need verification that this is working]
9571.1Slukem					Needs optimized bus_dmamap_sync().
9581.1Slukem
9591.1Slukem			* sgimips	[WORKING]
9601.1Slukem					Needs optimized bus_dmamap_sync().
9611.1Slukem
9621.1Slukem			* cobalt	[need testing]
9631.1Slukem
9641.1Slukem			* mipsco	[need testing]
9651.1Slukem
9661.1Slukem			* newsmips	[need testing]
9671.1Slukem
9681.1SlukemBranch:		thorpej_scsipi
9691.1SlukemDescription:	SCSI/ATAPI midlayer rewrite.
9701.1SlukemStatus:		Terminated; merged to -current
9711.1SlukemStart Date:
9721.1SlukemEnd Date:	Apr 25 2001
9731.1SlukemBase Tag:	thorpej_scsipi_base, thorpej_scsipi_nbase
9741.10SsaloMaintainer:	Manuel Bouyer <bouyer@NetBSD.org>,
9751.10Ssalo		Jason Thorpe <thorpej@NetBSD.org>
9761.1SlukemScope:		syssrc
9771.1SlukemNotes:		When a change from -current is pulled up please move the
9781.1Slukem		thorpej_scsipi_base tag to the revision you're syncing with.
9791.1Slukem		thorpej_scsipi_nbase is private to maintainer (only
9801.1Slukem		used when syncing the whole branch with HEAD).
9811.1Slukem		Just before the merge, syssrc has been tagged with
9821.1Slukem		thorpej_scsipi_beforemerge
9831.1Slukem
9841.1SlukemBranch:		thorpej-signal
9851.1SlukemDescription:	?
9861.1SlukemStatus:		?
9871.1SlukemStart Date:
9881.1SlukemEnd Date:
9891.1SlukemBase Tag:	thorpej-signal-base
9901.10SsaloMaintainer:	Jason Thorpe <thorpej@NetBSD.org>
9911.1SlukemScope:		kernel
9921.1SlukemNotes:
9931.1Slukem
9941.1SlukemBranch:		thorpej-setroot
9951.1SlukemDescription:	?
9961.1SlukemStatus:		Terminated; merged to -current
9971.1SlukemStart Date:
9981.1SlukemEnd Date:
9991.1SlukemBase Tag:
10001.10SsaloMaintainer:	Jason Thorpe <thorpej@NetBSD.org>
10011.1SlukemScope:		kernel
10021.1SlukemNotes:
10031.1Slukem
10041.84SkardelBranch:		simonb-timecounters
10051.84SkardelDescription:	Port FreeBSD timecounters to NetBSD
10061.85SkardelStatus:		Terminated
10071.84SkardelStart Date:	Sat Feb 04 2006
10081.84SkardelEnd Date:	Wed Jun 07 2006
10091.84SkardelBase Tag:	simonb-timecounters-base
10101.84SkardelMaintainer:	Simon Burge <simonb@NetBSD.org>,
10111.84Skardel		Frank Kardel <kardel@NetBSD.org>
10121.84SkardelScope:		sys, sbin/savecore, usr.bin/vmstat, usr.sbin/ntp
10131.84SkardelNotes:		early (partial conversion) commit to -current
10141.84Skardel		ok'ed by core@ on 20060605 for testing and further
10151.84Skardel		simplified conversion
10161.84Skardel
10171.1SlukemBranch:		wrstuden-devbsize
10181.1SlukemDescription:	Modify buffer cache to deal with different devices having
10191.1Slukem		different block sizes. Also DEV_BSIZE would go away.
10201.1SlukemStatus:		Terminated
10211.1SlukemStart Date:	Aug or Sept 1999
10221.1SlukemEnd Date:	1 Apr 2000
10231.1SlukemBase tag:	wrstuden-devbsize-base
10241.10SsaloMaintainer:	Bill Studenmund <wrstuden@NetBSD.org>
10251.1SlukemScope:		kernel
10261.1SlukemNotes:		No longer active due to lack of time, and introduction
10271.1Slukem		of UBC. In terms of UBC, the primary cache for
10281.1Slukem		file data is the VM cache, which needs to operate
10291.1Slukem		in terms of VM pages. As no existing device has native
10301.1Slukem		pages the same size as our VM pages, there already is
10311.1Slukem		a mapping going on between the VM system and the
10321.1Slukem		underlying blocks. So it would be easier and cleaner
10331.1Slukem		to adjust that to deal w/ different block sizes.
10341.1Slukem		Also with UBC, all i/o is in terms of bytes at an offset
10351.1Slukem		with a certain length, so the exact block size isn't a big
10361.1Slukem		deal.
10371.1Slukem
10381.1Slukem		Any other wrstuden-devbsize tag may (and should) go away.
10391.1Slukem
10401.25SyamtBranch:		yamt-km, yamt-km-doc
10411.19SyamtDescription:	simplify/improve kernel memory management and bootstrap
10421.46SyamtStatus:		Terminated; merged to -current
10431.19SyamtStart Date:	Tue Jan 25 2005
10441.46SyamtEnd Date:	Fri Apr  1 2005
10451.45SyamtBase Tag:	yamt-km-base{,2,3,4}, yamt-km-doc-base
10461.19SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
10471.25SyamtScope:		yamt-km: src/sys
10481.25Syamt		yamt-km-doc: src/share/man/man9/uvm.9
10491.19SyamtNotes:		http://mail-index.NetBSD.org/tech-kern/2004/12/25/0005.html
10501.19Syamt
10511.24Syamt		the followings are per-port status.
10521.24Syamt		(account names mean "tested by".)
10531.24Syamt
10541.20Syamt		works enough to go to multiuser:
10551.45Syamt			alpha, i386, xen (yamt@)
10561.24Syamt			pc532 (simonb@)
10571.28Syamt			alpha, i386, mac68k, macppc, pmax, shark,
10581.34Syamt			    sparc, sparc64, sun3, x68k (chs@)
10591.39Syamt			cobalt, dreamcast, hp300, news68k, newsmips,
10601.39Syamt			    sun3x (tsutsui@)
10611.31Syamt			amiga (mhitch@)
10621.32Syamt			cats, hp700 (skrll@)
10631.45Syamt			xen (bouyer@)
10641.28Syamt
10651.28Syamt		known to have the same problem as trunk:
10661.28Syamt			vax (chs@, stuck while running kvm_mkdb)
10671.24Syamt
10681.24Syamt		known to have a problem:
10691.35Syamt			luna68k (and, if any, other m68k ports which use TTR)
10701.35Syamt			needs to be revisited.
10711.39Syamt			-> for luna68k, although not tested,
10721.39Syamt			   Sysmap has been moved to avoid kva conflict with
10731.39Syamt			   I/O ranges.
10741.20Syamt
10751.20Syamt		buildable:
10761.20Syamt			src/sys/arch/acorn26/conf/GENERIC
10771.20Syamt			src/sys/arch/acorn32/conf/GENERIC
10781.20Syamt			src/sys/arch/algor/conf/P6032
10791.20Syamt			src/sys/arch/alpha/conf/GENERIC
10801.20Syamt			src/sys/arch/alpha/conf/GENERIC.MP
10811.20Syamt			src/sys/arch/amd64/conf/GENERIC
10821.20Syamt			src/sys/arch/amd64/conf/GENERIC.MP
10831.20Syamt			src/sys/arch/amiga/conf/GENERIC
10841.20Syamt			src/sys/arch/arc/conf/GENERIC
10851.20Syamt			src/sys/arch/atari/conf/MILAN-PCIIDE
10861.20Syamt			src/sys/arch/bebox/conf/GENERIC
10871.20Syamt			src/sys/arch/cats/conf/GENERIC
10881.20Syamt			src/sys/arch/cesfic/conf/GENERIC
10891.20Syamt			src/sys/arch/cobalt/conf/GENERIC
10901.20Syamt			src/sys/arch/dreamcast/conf/GENERIC
10911.20Syamt			src/sys/arch/evbarm/conf/TS7200
10921.20Syamt			src/sys/arch/evbppc/conf/WALNUT
10931.20Syamt			src/sys/arch/evbsh3/conf/COMPUTEXEVB
10941.20Syamt			src/sys/arch/evbsh5/conf/CAYMAN64
10951.20Syamt			src/sys/arch/hp300/conf/GENERIC
10961.20Syamt			src/sys/arch/hp700/conf/GENERIC
10971.20Syamt			src/sys/arch/hpcarm/conf/JORNADA728
10981.20Syamt			src/sys/arch/hpcmips/conf/GENERIC
10991.20Syamt			src/sys/arch/hpcsh/conf/GENERIC
11001.20Syamt			src/sys/arch/hpcsh/conf/HPW650PA
11011.20Syamt			src/sys/arch/i386/conf/GENERIC
11021.20Syamt			src/sys/arch/i386/conf/GENERIC.MP
11031.40Syamt			src/sys/arch/i386/conf/XEN0
11041.40Syamt			src/sys/arch/i386/conf/XENU
11051.20Syamt			src/sys/arch/ibmnws/conf/GENERIC
11061.20Syamt			src/sys/arch/iyonix/conf/GENERIC
11071.20Syamt			src/sys/arch/luna68k/conf/GENERIC
11081.20Syamt			src/sys/arch/mac68k/conf/GENERIC
11091.20Syamt			src/sys/arch/macppc/conf/GENERIC
11101.20Syamt			src/sys/arch/macppc/conf/GENERIC.MP
11111.20Syamt			src/sys/arch/mipsco/conf/GENERIC
11121.40Syamt			src/sys/arch/mmeye/conf/GENERIC
11131.20Syamt			src/sys/arch/mvme68k/conf/GENERIC
11141.20Syamt			src/sys/arch/netwinder/conf/GENERIC
11151.20Syamt			src/sys/arch/news68k/conf/GENERIC
11161.20Syamt			src/sys/arch/newsmips/conf/GENERIC
11171.20Syamt			src/sys/arch/next68k/conf/GENERIC
11181.20Syamt			src/sys/arch/ofppc/conf/GENERIC
11191.20Syamt			src/sys/arch/pc532/conf/GENERIC
11201.20Syamt			src/sys/arch/pmax/conf/GENERIC
11211.20Syamt			src/sys/arch/prep/conf/GENERIC
11221.20Syamt			src/sys/arch/sandpoint/conf/GENERIC
11231.20Syamt			src/sys/arch/sbmips/conf/GENERIC
11241.20Syamt			src/sys/arch/sgimips/conf/GENERIC32_IP3x
11251.20Syamt			src/sys/arch/shark/conf/GENERIC
11261.20Syamt			src/sys/arch/sparc/conf/GENERIC
11271.20Syamt			src/sys/arch/sparc/conf/GENERIC.MP
11281.20Syamt			src/sys/arch/sparc64/conf/GENERIC
11291.20Syamt			src/sys/arch/sparc64/conf/GENERIC.MP
11301.20Syamt			src/sys/arch/sun2/conf/GENERIC
11311.20Syamt			src/sys/arch/sun3/conf/GENERIC
11321.20Syamt			src/sys/arch/vax/conf/GENERIC
11331.20Syamt			src/sys/arch/vax/conf/GENERIC.MP
11341.20Syamt			src/sys/arch/x68k/conf/GENERIC
11351.20Syamt
11361.42Syamt			src/sys/arch/playstation2/conf/GENERIC
11371.42Syamt
11381.97SyamtBranch:		yamt-pdpolicy
11391.97SyamtDescription:	play with page replacement policy
11401.97Syamt		- separate page replacement policy from the rest of kernel
11411.97Syamt		- implement alternative replacement policy
11421.97Syamt		- related read-ahead adjustment?
11431.97SyamtStatus:		Terminated; merged to -current
11441.97SyamtStart Date:	Sun Mar  5 2006
11451.97SyamtEnd Date:	Sat Sep 16 2006
11461.97SyamtBase Tag:	yamt-pdpolicy-base9
11471.97SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
11481.97SyamtScope:		src/sys  (src/common is tagged but not branched)
11491.97SyamtNotes:		
11501.97Syamt
11511.54SyamtBranch:		yamt-readahead
11521.54SyamtDescription:	play with file readahead
11531.58SyamtStatus:		Terminated; merged to -current
11541.54SyamtStart Date:	Mon Nov 14 2005
11551.58SyamtEnd Date:	Wed Nov 30 2005
11561.57SyamtBase Tag:	yamt-readahead-base3
11571.54SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
11581.54SyamtScope:		src/sys
11591.54SyamtNotes:		
11601.54Syamt
11611.60SyamtBranch:		yamt-uio_vmspace
11621.60SyamtDescription:	uio_lwp/uio_segflg -> uio_vmspace
11631.67SyamtStatus:		Terminated; merged to -current
11641.60SyamtStart Date:	Mon Dec 31 2005
11651.67SyamtEnd Date:	Wed Mar  1 2006
11661.66SyamtBase Tag:	yamt-uio_vmspace-base5
11671.60SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
11681.60SyamtScope:		src/sys
11691.60SyamtNotes:		
11701.60Syamt
11711.151SyamtBranch:		yamt-splraiseipl
11721.151SyamtDescription:	finish implementing splraiseipl (and makeiplcookie).
11731.151Syamt		http://mail-index.NetBSD.org/tech-kern/2006/07/01/0000.html
11741.151Syamt
11751.151Syamt		- completes workqueue(9) and netbt.
11761.151Syamt		- fix PR/33218.
11771.151Syamt
11781.151SyamtStatus:		Terminated; merged to -current
11791.151SyamtStart Date:	Mon Sep 18 2006
11801.151SyamtEnd Date:	Fri Dec 22 2006
11811.151SyamtBase Tag:	yamt-splraiseipl-base5
11821.151SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
11831.151SyamtScope:		src/sys  (src/common is tagged but not branched)
11841.151SyamtNotes:		
11851.151Syamt		tested (by who):
11861.151Syamt			alpha		(yamt)
11871.151Syamt			alpha		(pavel)
11881.151Syamt			amd64		(reported privately)
11891.151Syamt			cobalt		(tsutsui)
11901.151Syamt			ews4800mips	(tsutsui)
11911.151Syamt			hp300		(tsutsui)
11921.151Syamt			hpcarm		(reported privately)
11931.151Syamt			i386		(yamt)
11941.151Syamt			macppc		(tsutsui)
11951.151Syamt			news68k		(tsutsui)
11961.151Syamt			sgimips(IP32)	(tsutsui)
11971.151Syamt			sparc(sun4c)	(tsutsui)
11981.151Syamt			sun2		(tsutsui)
11991.151Syamt			sun3		(tsutsui)
12001.151Syamt			sun3x		(tsutsui)
12011.151Syamt			xen		(yamt)
12021.151Syamt
12031.151Syamt		compile-tested:
12041.151Syamt			acorn26
12051.151Syamt			acorn32
12061.151Syamt			algor
12071.151Syamt			amiga
12081.151Syamt			arc
12091.151Syamt			atari
12101.151Syamt			bebox
12111.151Syamt			cats
12121.151Syamt			cesfic
12131.151Syamt			dreamcast
12141.151Syamt			evbarm
12151.151Syamt			evbmips
12161.151Syamt			evbppc(marvell)
12171.151Syamt			evbppc(ibm4xx)
12181.151Syamt			evbsh3
12191.151Syamt			hp700
12201.151Syamt			hpcmips
12211.151Syamt			hpcsh
12221.151Syamt			ia64
12231.151Syamt			ibmnws
12241.151Syamt			iyonix
12251.151Syamt			landisk
12261.151Syamt			luna68k
12271.151Syamt			mac68k
12281.151Syamt			mmeye
12291.151Syamt			mvme68k
12301.151Syamt			mvmeppc
12311.151Syamt			mipsco
12321.151Syamt			netwinder
12331.151Syamt			newsmips
12341.151Syamt			next68k
12351.151Syamt			ofppc
12361.151Syamt			pc532
12371.151Syamt			pmax
12381.151Syamt			pmppc
12391.151Syamt			prep
12401.151Syamt			sandpoint
12411.151Syamt			sbmips
12421.151Syamt			shark
12431.151Syamt			sparc
12441.151Syamt			sparc64
12451.151Syamt			vax
12461.151Syamt			x68k
12471.151Syamt			zaurus
12481.151Syamt
12491.151Syamt		not tested:
12501.151Syamt			pdp10 (i don't know how to build)
12511.151Syamt			sh5 (not buildable with an unrelated problem.)
12521.151Syamt
12531.151Syamt    compile  CAYMAN64/netbsd32_sa.o
12541.151Syamt    cc1: warnings being treated as errors
12551.151Syamt    /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c: In function 'netbsd32_sa_ucsp':
12561.151Syamt    /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c:126: warning: implicit declaration of function '_UC_MACHINE32_SP'
12571.151Syamt    --- netbsd32_sa.o ---
12581.151Syamt    *** [netbsd32_sa.o] Error code 1
12591.151Syamt    1 error
12601.151Syamt
12611.151Syamt		notyet:
12621.151Syamt			amigappc
12631.151Syamt			playstation2
12641.151Syamt
12651.79SbriggsBranch:		yamt-vop
12661.79SbriggsDescription:	remove several VOPs
12671.79SbriggsStatus:		Terminated; merged to -current
12681.79SbriggsStart Date:	Wed Oct 19 2005
12691.79SbriggsEnd Date:	Wed Nov  2 2005
12701.79SbriggsBase Tag:	yamt-vop-base3
12711.68SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
12721.68SyamtScope:		src/sys
12731.79SbriggsNotes:		http://mail-index.NetBSD.org/tech-kern/2005/09/27/0000.html
12741.71Speter
12751.98SgdamoreBranch:		gdamore-uart
12761.98SgdamoreDescription:	Add register table support to com driver.
12771.98SgdamoreStatus:		Active
12781.98SgdamoreStart Date:	14 June 2006
12791.98SgdamoreEnd Date:	13 July 2006
12801.98SgdamoreBase Tag:	gdamore-uart-base
12811.98SgdamoreMaintainer:	Garrett D'Amore <gdamore@NetBSD.org>
12821.98SgdamoreScope:		kernel
12831.98SgdamoreNotes:		Results in consolidation of Alchemy (mips/dev/alchemy/aucom.c)
12841.98Sgdamore		com support, and also removes a nasty hack from Atheros com.
12851.98Sgdamore
12861.79Sbriggs########################################################################
12871.1Slukem# Other:
12881.79Sbriggs########################################################################
12891.1Slukem
12901.1SlukemBranch:		magnum
12911.1SlukemDescription:	?
12921.1SlukemStatus:		?
12931.1SlukemStart Date:
12941.1SlukemEnd Date:
12951.1SlukemBase Tag:	magnum-base
12961.1SlukemMaintainer:	?
12971.1SlukemScope:		kernel
12981.1SlukemNotes:
12991.69Selad
1300