BRANCHES revision 1.166
11.166Srmind#	$NetBSD: BRANCHES,v 1.166 2007/03/24 01:24:01 rmind 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.159SrmindBase Tag:	yamt-idlelwp-base3
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.166Srmind		  alpha				[ Done ]
4881.166Srmind		  i386				[ Done, tested ]
4891.166Srmind		  amd64				[ Done ]
4901.166Srmind		  mips				[ WIP ]
4911.166Srmind		  sparc				[ Not yet ]
4921.166Srmind		  sparc64			[ Not yet ]
4931.166Srmind		  arm				[ Not yet ]
4941.166Srmind		  macppc/powerpc	[ Not yet ]
4951.166Srmind		  hppa				[ WIP ]
4961.166Srmind
4971.166Srmind		How to adapt a port?
4981.165Syamt
4991.165Syamt		- unify cpu_switch, cpu_exit, cpu_switchto into
5001.165Syamt		  a single cpu_switchto.  see cpu_switchto.9.
5011.165Syamt
5021.165Syamt		- implement cpu_idle.  see cpu_idle.9.
5031.165Syamt
5041.165Syamt		- add a flag argument to cpu_need_resched.
5051.165Syamt		  handle RESCHED_IMMED flag, which means "cause a preemption
5061.165Syamt		  as soon as possible."  eg. in the case of MULTIPROCESSOR,
5071.165Syamt		  send an IPI to the target cpu.
5081.165Syamt
5091.165Syamt		- "curlwp == NULL" is not a valid check for idle state anymore.
5101.165Syamt		  use "(curlwp->l_flag & LW_IDLE) != 0" instead.  curlwp is
5111.165Syamt		  almost always non-NULL, with exceptions like early on boot.
5121.165Syamt
5131.165Syamt		- remove idle pcbs.
5141.165Syamt
5151.165Syamt		- (if MULTIPROCESSOR) allocate idle lwps for non-primary
5161.165Syamt		  processors by calling create_idle_lwp.  tweak processor
5171.165Syamt		  trampoline code.
5181.165Syamt
5191.165Syamt		- (if schedhz!=0) call schedclock regardless of the value of
5201.165Syamt		  curlwp.
5211.165Syamt
5221.165Syamt		- of course, update MD users of scheduler/switching API.
5231.153Syamt
5241.79SbriggsBranch:		yamt-lazymbuf
5251.79SbriggsDescription:	implement and evaluate lazy mapping of mbuf external data pages
5261.92Syamt		it's intended as the first step of larger changes.
5271.92Syamt			1. support operations (esp. bus_dma load) on
5281.92Syamt			   unmapped mbuf.
5291.92Syamt			2. unify mbuf and buf.
5301.92Syamt			   (or, at least some parts of them)
5311.92Syamt			3. then it should be trivial to implement
5321.92Syamt			   i/o coalescing, etc.
5331.79SbriggsStatus:		Active
5341.79SbriggsStart Date:	Wed Jul  6 2005
5351.79SbriggsEnd Date:	
5361.157SyamtBase Tag:	yamt-lazymbuf-base4
5371.79SbriggsMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
5381.152SyamtScope:		src/sys  (src/common is tagged but not branched)
5391.79SbriggsNotes:		
5401.79Sbriggs
5411.163SreinoudBranch:		reinoud-bufcleanup
5421.164SreinoudDescription:	implement and evaluate struct buf usage cleanup strategies.
5431.164Sreinoud		Ideas currently in mind (preference for b):
5441.164Sreinoud		a)
5451.163Sreinoud			1. use of bio_ops per buffer.
5461.163Sreinoud			2. allow chaining/overloading of functions in bio_ops
5471.163Sreinoud			   and provide some private context.
5481.163Sreinoud			3. extend the bio_ops with commenly used functionality
5491.163Sreinoud			   like pending action counting, custom context passing,
5501.163Sreinoud			   last minute processing of buffer data, buffer cache
5511.163Sreinoud			   etc.
5521.163Sreinoud			4. investigate the use of the kcont()
5531.163Sreinoud			   continuation-passing framework for async io
5541.163Sreinoud			   completion notification for bufs
5551.164Sreinoud			...
5561.164Sreinoud		b)
5571.164Sreinoud			1. all sequencing use of B_CALL replaced by
5581.164Sreinoud			   device-threads, if possible generic code around BUFQ
5591.164Sreinoud			2. possibly use kcont() for async IO finished signalling
5601.164Sreinoud			3. counter of pending and queued actions requestable
5611.164Sreinoud			   by IOCTL interface?
5621.164Sreinoud			4. implement `last minute buffer fixup' calls and maybe
5631.164Sreinoud			   even finished I/O calls as vnode operations
5641.164Sreinoud			...
5651.163SreinoudStatus:		Active
5661.163SreinoudStart Date:	Thu Mar 15 2007
5671.163SreinoudEnd Date:
5681.163SreinoudBase Tag:	reinoud-bufcleanup-base
5691.163SreinoudMaintainer:	Reinoud Zandijk <reinoud@NetBSD.org>
5701.163SreinoudScope:		src/sys and src/common
5711.163SreinoudNotes:		Used as expiriment sandbox and if successful hopefully one day
5721.163Sreinoud		to be intergrated.
5731.163Sreinoud
5741.79Sbriggs
5751.79Sbriggs########################################################################
5761.79Sbriggs# Individual developers' branches (Terminated):
5771.79Sbriggs########################################################################
5781.79Sbriggs
5791.1SlukemBranch:		bouyer-scsipi
5801.1SlukemDescription:	Integration of atapi support
5811.1SlukemStatus:		Terminated
5821.1SlukemStart Date:
5831.1SlukemEnd Date:
5841.1SlukemBase Tag:
5851.10SsaloMaintainer:	Manuel Bouyer <bouyer@NetBSD.org>
5861.1SlukemScope:		kernel
5871.1SlukemNotes:		Superseded by thorpej_scsipi
5881.1Slukem
5891.79SbriggsBranch:		bouyer-xen2
5901.79SbriggsDescription:	update xen port to xen 2.0, with support for domain0 operations
5911.79SbriggsStatus:		Terminated
5921.79SbriggsStart Date:	Dec 13 2004
5931.79SbriggsEnd Date:	Mar 10 2005
5941.79SbriggsBase Tag:	netbsd-2-base
5951.79SbriggsMaintainer:	Manuel Bouyer <bouyer@NetBSD.org>
5961.79SbriggsScope:		src/sys/arch/xen
5971.79SbriggsNotes:
5981.79Sbriggs
5991.87SchapBranch: 	chap-midi
6001.87SchapDescription:	Renovation of MIDI support
6011.87SchapStatus: 	Terminated; merged to -current
6021.87SchapStart Date:	19 May 2006
6031.87SchapEnd Date:	30 Jun 2006
6041.87SchapBase Tag:	chap-midi-base
6051.87SchapMaintainer:	Chapman Flack <chap@NetBSD.org>
6061.87SchapScope:		sys, share/man, usr.bin
6071.87SchapNotes:
6081.87Schap
6091.1SlukemBranch:		chs-ubc
6101.44SchsDescription:	Unified Buffer Cache
6111.44SchsStatus:		Terminated
6121.1SlukemStart Date:
6131.1SlukemEnd Date:
6141.1SlukemBase Tag:	chs-ubc-base
6151.10SsaloMaintainer:	Chuck Silvers <chs@NetBSD.org>
6161.1SlukemScope:		kernel
6171.1SlukemNotes:
6181.1Slukem
6191.1SlukemBranch:		chs-ubc2
6201.44SchsDescription:	 Unified Buffer Cache
6211.44SchsStatus:		Terminated; merged to -current
6221.1SlukemStart Date:
6231.1SlukemEnd Date:
6241.1SlukemBase Tag:	chs-ubc2-base, chs-ubc2-newbase
6251.10SsaloMaintainer:	Chuck Silvers <chs@NetBSD.org>
6261.1SlukemScope:		kernel
6271.1SlukemNotes:
6281.1Slukem
6291.1SlukemBranch:		cjs-build-against-obj-dir
6301.1SlukemDescription:	?
6311.1SlukemStatus:		?
6321.1SlukemStart Date:
6331.1SlukemEnd Date:
6341.1SlukemBase Tag:
6351.10SsaloMaintainer:	Curt Sampson <cjs@NetBSD.org>
6361.1SlukemScope:		Entire tree.
6371.1SlukemNotes:
6381.1Slukem
6391.1SlukemBranch:		eeh-paddr_t
6401.44SchsDescription:	use separate types for virtual vs. physical addresses
6411.44SchsStatus:		Terminated; merged to -current
6421.1SlukemStart Date:
6431.1SlukemEnd Date:
6441.1SlukemBase Tag:	eeh-paddr_t-base
6451.10SsaloMaintainer:	Eduardo Horvath <eeh@NetBSD.org>
6461.1SlukemScope:		kernel
6471.44SchsNotes:		This is needed to support 32-bit kernels on sparc64.
6481.1Slukem
6491.79SbriggsBranch:		elad-kernelauth
6501.79SbriggsDescription:	Native NetBSD implementation of Apple's kernel authorization
6511.79Sbriggs		based on TN2127. This is a "clean-room" implementation to
6521.79Sbriggs		avoid any licensing issues.
6531.79SbriggsStatus:		Terminated; merged to -current
6541.79SbriggsStart Date:	Tue Mar	 7 2006
6551.79SbriggsEnd Date:	Mon May 15 2006
6561.79SbriggsBase Tag:	elad-kernelauth-base
6571.79SbriggsMaintainer:	Elad Efrat <elad@NetBSD.org>
6581.79SbriggsScope:		src/sys, src/share/man/man9/Makefile,
6591.79Sbriggs		src/share/man/man9/kauth.h, src/distrib/sets/lists/comp/mi
6601.79SbriggsNotes:
6611.79Sbriggs
6621.1SlukemBranch:		fvdl-softdep
6631.1SlukemDescription:	FFS soft dependencies
6641.44SchsStatus:		Terminated; merged to -current
6651.1SlukemStart Date:
6661.1SlukemEnd Date:
6671.1SlukemBase Tag:	fvdl-softdep-base
6681.10SsaloMaintainer:	Frank van der Linden <fvdl@NetBSD.org>
6691.1SlukemScope:		kernel
6701.1SlukemNotes:
6711.1Slukem
6721.1SlukemBranch:		gehenna-devsw
6731.1SlukemDescription:	auto-generation of devsw table
6741.1SlukemStatus:		Terminated
6751.1SlukemStart Date:	16 May 2002
6761.1SlukemEnd Date:	6 Sep 2002
6771.1SlukemBase Tag:	gehenna-devsw-base
6781.10SsaloMaintainer:	MAEKAWA Masahide <gehenna@NetBSD.org>
6791.1SlukemScope:		syssrc
6801.1SlukemNotes:		The goal is to get rid of the existing device switch tables in
6811.1Slukem		port-dependent conf.c and to generate them dynamically by
6821.1Slukem		config(8).
6831.8Sgmcgarry
6841.1SlukemBranch:		is-newarp
6851.23SisDescription:	ARP for non-Ethernet
6861.23SisStatus:		Terminated; merged before NetBSD 1.3
6871.23SisStart Date:	1996/10/13
6881.23SisEnd Date:	1997/03/15
6891.1SlukemBase Tag:	is-newarp-base
6901.10SsaloMaintainer:	Ignatios Souvatzis <is@NetBSD.org>
6911.1SlukemScope:		kernel
6921.1SlukemNotes:
6931.1Slukem
6941.1SlukemBranch:		kenh-if-detach
6951.1SlukemDescription:	Interface detach support.
6961.1SlukemStatus:		?
6971.1SlukemStart Date:
6981.1SlukemEnd Date:
6991.1SlukemBase Tag:	kenh-if-detach-base
7001.10SsaloMaintainer:	Ken Hornstein <kenh@NetBSD.org>
7011.1SlukemScope:		kernel
7021.1SlukemNotes:
7031.1Slukem
7041.16SkentBranch:		kent-audio1
7051.16SkentDescription:	Audio converter pipeline
7061.18SkentStatus:		Terminated; merged to -current
7071.16SkentStart Date:	Tue Dec  7 2004
7081.17SkentEnd Date:	Tue Jan 11 2005
7091.17SkentBase Tag:	kent-audio1-base
7101.17SkentMaintainer:	TAMURA Kent <kent@NetBSD.org>
7111.17SkentScope:		kernel (audio device drivers)
7121.17SkentNotes:		http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html
7131.17Skent		Please consult with the maintainer before committing
7141.17Skent		to this branch.
7151.17Skent
7161.1SlukemBranch:		kqueue
7171.1SlukemDescription:	kqueue kernel event notification mechanism (from FreeBSD)
7181.5SjdolecekStatus:		Terminated; merged to -current
7191.1SlukemStart Date:	Tue Jul 10 23:08:38 EST 2001
7201.5SjdolecekEnd Date:	Tue Oct 24 09:14:14 GMT 2002
7211.1SlukemBase Tag:	kqueue-base
7221.1SlukemMaintainer:	Jaromir Dolecek <jdolecek@NetBSD.org>
7231.1SlukemScope:		kernel, libc/sys, share/man/man9, usr.bin/fstat
7241.1SlukemNotes:		Integration of FreeBSD's kqueue(2) mechanism, with various
7251.1Slukem		local internal changes to better suit NetBSD, and
7261.1Slukem		enhancements such as looking up filters by name or
7271.1Slukem		number, and dynamic registration of "user" filters.
7281.1Slukem		The work is complete as is, but is awaiting more
7291.1Slukem		feedback from various kernel gurus before going mainline.
7301.11Sskrll
7311.11SskrllBranch:		ktrace-lwp
7321.11SskrllDescription:	ktrace support for lwp ids.
7331.59SskrllStatus:		Terminated; merged to -current
7341.11SskrllStart Date:	Wed Jul  2 15:27:30 UTC 2003
7351.59SskrllEnd Date:	Sun Dec 11 12:25:29 UTC 2005
7361.11SskrllBase Tag:	ktrace-lwp-base
7371.12SgrantMaintainer:	Darren Reed <darrenr@NetBSD.org>
7381.11SskrllScope:		sys
7391.11SskrllNotes:		
7401.1Slukem
7411.1SlukemBranch:		marc-pcmcia
7421.1SlukemDescription:	PCMCIA support
7431.1SlukemStatus:		Terminated; merged to -current
7441.1SlukemStart Date:
7451.1SlukemEnd Date:
7461.1SlukemBase Tag:	marc-pcmcia-base, marc-pcmcia-bp
7471.10SsaloMaintainer:	Marc Horowitz <marc@NetBSD.org>
7481.1SlukemScope:		kernel
7491.1SlukemNotes:
7501.1Slukem
7511.1SlukemBranch:		minoura_x68k_bus_h
7521.1SlukemDescription:	bus_space(9) and bus_dma(9) implementation for x68k
7531.1SlukemStatus:		Terminated; merged to -current
7541.1SlukemStart Date:	23 Dec 1998
7551.1SlukemEnd Date:	16 Mar 1999
7561.1SlukemBase Tag:	minoura_x68k_bus_h-base
7571.10SsaloMaintainer:	Minoura Makoto <minoura@NetBSD.org>
7581.1SlukemScope:		sys/arch/x68k
7591.1SlukemNotes:
7601.1Slukem
7611.1SlukemBranch:		minoura-xpg4dl
7621.1SlukemDescription:	Citrus Project locale subsystem
7631.1SlukemStatus:		Terminated; (partly) merged to -current
7641.1SlukemStart Date:	28 March 2000
7651.1SlukemEnd Date:
7661.1SlukemBase Tag:	minoura-xpg4dl-base
7671.10SsaloMaintainer:	Minoura Makoto <minoura@NetBSD.org>
7681.1SlukemScope:		basesrc, syssrc, sharesrc
7691.1SlukemNotes:		Citrus Project is developing dynamically-loadable, codeset-
7701.1Slukem		independent locale subsystem.  Part of the implementation
7711.1Slukem		(LC_CTYPE) called XPG4DL is now integrated to -current.
7721.1Slukem
7731.160SmjfBranch:		mjf-ufs-trans
7741.160SmjfDescription:	filesystem transactions for ufs
7751.160SmjfStatus:		Active
7761.160SmjfStart Date:	12 March 2007
7771.160SmjfEnd Date:
7781.160SmjfBase Tag:	mjf-ufs-trans-base
7791.160SmjfMaintainer:	Matt Fleming <mjf@NetBSD.org>
7801.160SmjfScope:		kernel
7811.160SmjfNotes:
7821.160Smjf
7831.1SlukemBranch:		mrg-vm-swap
7841.49SmrgDescription:	dynamic swap allocation, swap-to-files support
7851.49SmrgStatus:		Terminated; abondoned for mrg-vm-swap2
7861.49SmrgStart Date:	12 February 1997
7871.49SmrgEnd Date:	15 March 1997
7881.49SmrgBase Tag:	[none]
7891.49SmrgMaintainer:	Matthew R. Green <mrg@NetBSD.org>
7901.49SmrgScope:		kernel
7911.49SmrgNotes:
7921.49Smrg
7931.49SmrgBranch:		mrg-vm-swap2
7941.49SmrgDescription:	dynamic swap allocation, swap-to-files support
7951.49SmrgStatus:		Terminated; merged to -current
7961.49SmrgStart Date:	4 May 1997
7971.49SmrgEnd Date:	12 June 1997
7981.49SmrgBase Tag:	mrg-vm-swap2-base
7991.10SsaloMaintainer:	Matthew R. Green <mrg@NetBSD.org>
8001.1SlukemScope:		kernel
8011.1SlukemNotes:
8021.1Slukem
8031.1SlukemBranch:		nathanw_sa
8041.1SlukemDescription:	Scheduler activations
8051.44SchsStatus:		Terminated; merged to -current
8061.1SlukemStart Date:	5 March 2001
8071.9SthorpejEnd Date:	18 January 2003
8081.1SlukemBase Tag:	nathanw_sa_base
8091.10SsaloMaintainer:	Nathan Williams <nathanw@NetBSD.org>
8101.1SlukemScope:		kernel, libc, libkvm, libpthread, libpthread_dbg, include, 
8111.1Slukem		bin/ps usr.bin/systat usr.bin/top usr.bin/w
8121.1Slukem		gnu/dist/toolchain/gdb gnu/usr.bin/gdb
8131.1SlukemNotes:		The idea of scheduler activations is described in the
8141.1Slukem		classic paper by Anderson et al., in ACM Transactions
8151.1Slukem		a on Computer Systems volume 10 issue 1 (1992),which
8161.1Slukem		can be found at
8171.1Slukem		http://www.acm.org/pubs/citations/journals/tocs/1992-10-1/p53-anderson/
8181.1Slukem		Many ideas in the implementation are based on the
8191.1Slukem		implementation of scheduler activations added to Mach
8201.1Slukem		3.0 and described by Davis et al. in the University of
8211.1Slukem		Washington CS tech report 92-08-93, which can be found
8221.1Slukem		at
8231.1Slukem		ftp://ftp.cs.washington.edu/tr/1992/08/UW-CSE-92-08-03.PS.Z
8241.1Slukem
8251.1Slukem		My USENIX paper on the subject can be found at
8261.1Slukem		http://web.mit.edu/nathanw/www/usenix/
8271.1Slukem
8281.1Slukem		Please consult with the maintainer before committing
8291.1Slukem		to this branch.
8301.1Slukem		Other tags starting with nathanw_sa reserved for
8311.1Slukem		branch management and are not guaranteed to be stable.
8321.9Sthorpej
8331.9Sthorpej		Trunk tagged with "nathanw_sa_before_merge" prior to
8341.9Sthorpej		merging branch down to trunk.  Branch tagged with
8351.9Sthorpej		"nathanw_sa_end" to indicate the ending revision of
8361.9Sthorpej		the branch.
8371.1Slukem
8381.1SlukemBranch:		perseant-lfsv2
8391.1SlukemDescription:	LFS incompatible on-disk data structure changes
8401.1SlukemStatus:		Terminated
8411.1SlukemStart Date:	27 June 2001
8421.1SlukemEnd Date:	16 July 2001
8431.1SlukemBase Tag:	perseant-lfsv2-base
8441.10SsaloMaintainer:	Konrad Schroder <perseant@NetBSD.org>
8451.1SlukemScope:		basesrc/{sbin/*lfs,libexec/lfs_cleanerd,usr.sbin/dumplfs}, syssrc/sys/ufs
8461.1SlukemNotes:		This branch should be short-lived, I expect to merge as soon
8471.1Slukem		as the data structures required for unremove are in and tested.
8481.1Slukem
8491.118SpeterBranch:		peter-altq
8501.118SpeterDescription:	New ALTQ framework:
8511.118Speter		- sync with KAME sources
8521.118Speter		- share mtag/name mapping functions
8531.118Speter		- separate altq + pf attachment
8541.118SpeterStatus:		Terminated; merged to -current
8551.118SpeterStart Date:	March 16, 2006
8561.118SpeterEnd Date:	October 12, 2006
8571.118SpeterBase Tag:	peter-altq-base
8581.118SpeterMaintainer:	Peter Postma <peter@NetBSD.org>,
8591.118Speter		Martin Husemann <martin@NetBSD.org>,
8601.118Speter		Matthias Scheler <tron@NetBSD.org>
8611.118SpeterScope:		dist/pf dist/ipf distrib/sets/lists sys usr.sbin/altq
8621.118SpeterNotes:		Only the first item in the description was finished
8631.118Speter		in this branch.
8641.118Speter
8651.1SlukemBranch:		sommerfeld_i386mp_1
8661.1SlukemDescription:	Multiprocessor support for i386 using Intel MP BIOS.
8671.3SsommerfeStatus:		Terminated; merged to -current
8681.1SlukemStart Date:	21 Feb 2000
8691.2SfvdlEnd Date:	01 Oct 2002
8701.1SlukemBase Tag:	sommerfeld_i386mpbase_1
8711.10SsaloMaintainer:	Bill Sommerfeld <sommerfeld@NetBSD.org>
8721.1SlukemScope:		sys/arch/i386
8731.1SlukemNotes:
8741.1Slukem		Code committed to the branch has booted to multiuser 
8751.1Slukem		on at least one system.
8761.1Slukem
8771.1Slukem		Not guaranteed to compile against mainline since -current
8781.1Slukem		may have changed incompatibly with the last branch update;
8791.1Slukem		use "cvs update -D" to roll-back the rest of the tree to match.
8801.1Slukem
8811.1Slukem		Please get explicit permission from the maintainer 
8821.1Slukem		before each commit, or your changes will be backed out.
8831.1Slukem		Other tags starting with sommerfeld_ are private to 
8841.1Slukem		the developer and are guaranteed to be unstable.
8851.1Slukem		Only the maintainer should move tags.
8861.1Slukem
8871.1Slukem		Note that this branch uses a DIFFERENT scheme for 
8881.1Slukem		synching with the mainline.  the maintainer uses some private
8891.1Slukem		scripts for keeping them in synch; if you make commits 
8901.1Slukem		to the branch to "resynchronize" things, you'll
8911.1Slukem		probably do it wrong; instead, ask the maintainer to
8921.1Slukem		resynchronize things.
8931.1Slukem
8941.1Slukem		See sys/arch/i386/TODO on the branch for a list of known
8951.1Slukem		issues with the branch.
8961.1Slukem
8971.1SlukemBranch:		thorpej-mips-cache
8981.1SlukemDescription:	overhaul MIPS cache support code
8991.1SlukemStatus:		Terminated; merged to -current
9001.1SlukemStart Date:	Oct 23 2001
9011.1SlukemEnd Date:	Nov 14 2001
9021.1SlukemBase Tag:	thorpej-mips-cache-base
9031.1SlukemScope:		syssrc
9041.1SlukemNotes:		This branch needs more debugging, testing, and more
9051.1Slukem		ports need to be converted to the new world order.
9061.1Slukem
9071.1Slukem		The following processors have had cache ops
9081.1Slukem		written:
9091.1Slukem
9101.1Slukem			* R2000/R3000 (cache_r3k) -- light testing,
9111.1Slukem			  needs to be beat on a lot more to make
9121.1Slukem			  sure it's working.
9131.1Slukem
9141.10Ssalo			* R4000/R4400 (cache_r4k) -- mhitch@NetBSD.org
9151.1Slukem			  tracked down a bug, which has been fixed.
9161.1Slukem
9171.1Slukem			  Confirmed working on R4000-with-L2.
9181.1Slukem
9191.1Slukem			  Confirmed working on R4400-no-L2 and
9201.1Slukem			  R4400-with-L2.
9211.1Slukem
9221.10Ssalo			* R4600/R5000 (cache_r5k) -- shin@NetBSD.org
9231.1Slukem			  has committed fixes to this code.
9241.1Slukem
9251.1Slukem			  Confirmed working on R4600 v2 (SGI IP-22 with
9261.1Slukem			  no SysAD L2 cache).
9271.1Slukem
9281.1Slukem			  Confirmed working on RM5260 (Algorithmics P-5064).
9291.1Slukem
9301.10Ssalo			* TX39 (cache_tx39) -- uch@NetBSD.org has
9311.1Slukem			  committed fixes to this code.  Awaiting
9321.1Slukem			  confirmation that it is working properly.
9331.1Slukem
9341.10Ssalo			* R5900 (cache_r5900) -- uch@NetBSD.org has
9351.1Slukem			  written this code and tested it on a
9361.1Slukem			  PlayStation 2.
9371.1Slukem
9381.1Slukem		The following ports have been updated to compile (and
9391.1Slukem		use optimized-for-processor bus_dma routines).  Those
9401.1Slukem		that have been tested and work are marked with [WORKING].
9411.1Slukem
9421.1Slukem			* algor		[WORKING]
9431.1Slukem
9441.1Slukem			* arc		[WORKING]
9451.1Slukem
9461.1Slukem			* pmax		[WORKING]
9471.1Slukem
9481.1Slukem			* playstation2	[WORKING]
9491.1Slukem					Needs optimized bus_dmamap_sync().
9501.1Slukem
9511.1Slukem			* hpcmips	[need verification that this is working]
9521.1Slukem					Needs optimized bus_dmamap_sync().
9531.1Slukem
9541.1Slukem			* sgimips	[WORKING]
9551.1Slukem					Needs optimized bus_dmamap_sync().
9561.1Slukem
9571.1Slukem			* cobalt	[need testing]
9581.1Slukem
9591.1Slukem			* mipsco	[need testing]
9601.1Slukem
9611.1Slukem			* newsmips	[need testing]
9621.1Slukem
9631.1SlukemBranch:		thorpej_scsipi
9641.1SlukemDescription:	SCSI/ATAPI midlayer rewrite.
9651.1SlukemStatus:		Terminated; merged to -current
9661.1SlukemStart Date:
9671.1SlukemEnd Date:	Apr 25 2001
9681.1SlukemBase Tag:	thorpej_scsipi_base, thorpej_scsipi_nbase
9691.10SsaloMaintainer:	Manuel Bouyer <bouyer@NetBSD.org>,
9701.10Ssalo		Jason Thorpe <thorpej@NetBSD.org>
9711.1SlukemScope:		syssrc
9721.1SlukemNotes:		When a change from -current is pulled up please move the
9731.1Slukem		thorpej_scsipi_base tag to the revision you're syncing with.
9741.1Slukem		thorpej_scsipi_nbase is private to maintainer (only
9751.1Slukem		used when syncing the whole branch with HEAD).
9761.1Slukem		Just before the merge, syssrc has been tagged with
9771.1Slukem		thorpej_scsipi_beforemerge
9781.1Slukem
9791.1SlukemBranch:		thorpej-signal
9801.1SlukemDescription:	?
9811.1SlukemStatus:		?
9821.1SlukemStart Date:
9831.1SlukemEnd Date:
9841.1SlukemBase Tag:	thorpej-signal-base
9851.10SsaloMaintainer:	Jason Thorpe <thorpej@NetBSD.org>
9861.1SlukemScope:		kernel
9871.1SlukemNotes:
9881.1Slukem
9891.1SlukemBranch:		thorpej-setroot
9901.1SlukemDescription:	?
9911.1SlukemStatus:		Terminated; merged to -current
9921.1SlukemStart Date:
9931.1SlukemEnd Date:
9941.1SlukemBase Tag:
9951.10SsaloMaintainer:	Jason Thorpe <thorpej@NetBSD.org>
9961.1SlukemScope:		kernel
9971.1SlukemNotes:
9981.1Slukem
9991.84SkardelBranch:		simonb-timecounters
10001.84SkardelDescription:	Port FreeBSD timecounters to NetBSD
10011.85SkardelStatus:		Terminated
10021.84SkardelStart Date:	Sat Feb 04 2006
10031.84SkardelEnd Date:	Wed Jun 07 2006
10041.84SkardelBase Tag:	simonb-timecounters-base
10051.84SkardelMaintainer:	Simon Burge <simonb@NetBSD.org>,
10061.84Skardel		Frank Kardel <kardel@NetBSD.org>
10071.84SkardelScope:		sys, sbin/savecore, usr.bin/vmstat, usr.sbin/ntp
10081.84SkardelNotes:		early (partial conversion) commit to -current
10091.84Skardel		ok'ed by core@ on 20060605 for testing and further
10101.84Skardel		simplified conversion
10111.84Skardel
10121.1SlukemBranch:		wrstuden-devbsize
10131.1SlukemDescription:	Modify buffer cache to deal with different devices having
10141.1Slukem		different block sizes. Also DEV_BSIZE would go away.
10151.1SlukemStatus:		Terminated
10161.1SlukemStart Date:	Aug or Sept 1999
10171.1SlukemEnd Date:	1 Apr 2000
10181.1SlukemBase tag:	wrstuden-devbsize-base
10191.10SsaloMaintainer:	Bill Studenmund <wrstuden@NetBSD.org>
10201.1SlukemScope:		kernel
10211.1SlukemNotes:		No longer active due to lack of time, and introduction
10221.1Slukem		of UBC. In terms of UBC, the primary cache for
10231.1Slukem		file data is the VM cache, which needs to operate
10241.1Slukem		in terms of VM pages. As no existing device has native
10251.1Slukem		pages the same size as our VM pages, there already is
10261.1Slukem		a mapping going on between the VM system and the
10271.1Slukem		underlying blocks. So it would be easier and cleaner
10281.1Slukem		to adjust that to deal w/ different block sizes.
10291.1Slukem		Also with UBC, all i/o is in terms of bytes at an offset
10301.1Slukem		with a certain length, so the exact block size isn't a big
10311.1Slukem		deal.
10321.1Slukem
10331.1Slukem		Any other wrstuden-devbsize tag may (and should) go away.
10341.1Slukem
10351.25SyamtBranch:		yamt-km, yamt-km-doc
10361.19SyamtDescription:	simplify/improve kernel memory management and bootstrap
10371.46SyamtStatus:		Terminated; merged to -current
10381.19SyamtStart Date:	Tue Jan 25 2005
10391.46SyamtEnd Date:	Fri Apr  1 2005
10401.45SyamtBase Tag:	yamt-km-base{,2,3,4}, yamt-km-doc-base
10411.19SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
10421.25SyamtScope:		yamt-km: src/sys
10431.25Syamt		yamt-km-doc: src/share/man/man9/uvm.9
10441.19SyamtNotes:		http://mail-index.NetBSD.org/tech-kern/2004/12/25/0005.html
10451.19Syamt
10461.24Syamt		the followings are per-port status.
10471.24Syamt		(account names mean "tested by".)
10481.24Syamt
10491.20Syamt		works enough to go to multiuser:
10501.45Syamt			alpha, i386, xen (yamt@)
10511.24Syamt			pc532 (simonb@)
10521.28Syamt			alpha, i386, mac68k, macppc, pmax, shark,
10531.34Syamt			    sparc, sparc64, sun3, x68k (chs@)
10541.39Syamt			cobalt, dreamcast, hp300, news68k, newsmips,
10551.39Syamt			    sun3x (tsutsui@)
10561.31Syamt			amiga (mhitch@)
10571.32Syamt			cats, hp700 (skrll@)
10581.45Syamt			xen (bouyer@)
10591.28Syamt
10601.28Syamt		known to have the same problem as trunk:
10611.28Syamt			vax (chs@, stuck while running kvm_mkdb)
10621.24Syamt
10631.24Syamt		known to have a problem:
10641.35Syamt			luna68k (and, if any, other m68k ports which use TTR)
10651.35Syamt			needs to be revisited.
10661.39Syamt			-> for luna68k, although not tested,
10671.39Syamt			   Sysmap has been moved to avoid kva conflict with
10681.39Syamt			   I/O ranges.
10691.20Syamt
10701.20Syamt		buildable:
10711.20Syamt			src/sys/arch/acorn26/conf/GENERIC
10721.20Syamt			src/sys/arch/acorn32/conf/GENERIC
10731.20Syamt			src/sys/arch/algor/conf/P6032
10741.20Syamt			src/sys/arch/alpha/conf/GENERIC
10751.20Syamt			src/sys/arch/alpha/conf/GENERIC.MP
10761.20Syamt			src/sys/arch/amd64/conf/GENERIC
10771.20Syamt			src/sys/arch/amd64/conf/GENERIC.MP
10781.20Syamt			src/sys/arch/amiga/conf/GENERIC
10791.20Syamt			src/sys/arch/arc/conf/GENERIC
10801.20Syamt			src/sys/arch/atari/conf/MILAN-PCIIDE
10811.20Syamt			src/sys/arch/bebox/conf/GENERIC
10821.20Syamt			src/sys/arch/cats/conf/GENERIC
10831.20Syamt			src/sys/arch/cesfic/conf/GENERIC
10841.20Syamt			src/sys/arch/cobalt/conf/GENERIC
10851.20Syamt			src/sys/arch/dreamcast/conf/GENERIC
10861.20Syamt			src/sys/arch/evbarm/conf/TS7200
10871.20Syamt			src/sys/arch/evbppc/conf/WALNUT
10881.20Syamt			src/sys/arch/evbsh3/conf/COMPUTEXEVB
10891.20Syamt			src/sys/arch/evbsh5/conf/CAYMAN64
10901.20Syamt			src/sys/arch/hp300/conf/GENERIC
10911.20Syamt			src/sys/arch/hp700/conf/GENERIC
10921.20Syamt			src/sys/arch/hpcarm/conf/JORNADA728
10931.20Syamt			src/sys/arch/hpcmips/conf/GENERIC
10941.20Syamt			src/sys/arch/hpcsh/conf/GENERIC
10951.20Syamt			src/sys/arch/hpcsh/conf/HPW650PA
10961.20Syamt			src/sys/arch/i386/conf/GENERIC
10971.20Syamt			src/sys/arch/i386/conf/GENERIC.MP
10981.40Syamt			src/sys/arch/i386/conf/XEN0
10991.40Syamt			src/sys/arch/i386/conf/XENU
11001.20Syamt			src/sys/arch/ibmnws/conf/GENERIC
11011.20Syamt			src/sys/arch/iyonix/conf/GENERIC
11021.20Syamt			src/sys/arch/luna68k/conf/GENERIC
11031.20Syamt			src/sys/arch/mac68k/conf/GENERIC
11041.20Syamt			src/sys/arch/macppc/conf/GENERIC
11051.20Syamt			src/sys/arch/macppc/conf/GENERIC.MP
11061.20Syamt			src/sys/arch/mipsco/conf/GENERIC
11071.40Syamt			src/sys/arch/mmeye/conf/GENERIC
11081.20Syamt			src/sys/arch/mvme68k/conf/GENERIC
11091.20Syamt			src/sys/arch/netwinder/conf/GENERIC
11101.20Syamt			src/sys/arch/news68k/conf/GENERIC
11111.20Syamt			src/sys/arch/newsmips/conf/GENERIC
11121.20Syamt			src/sys/arch/next68k/conf/GENERIC
11131.20Syamt			src/sys/arch/ofppc/conf/GENERIC
11141.20Syamt			src/sys/arch/pc532/conf/GENERIC
11151.20Syamt			src/sys/arch/pmax/conf/GENERIC
11161.20Syamt			src/sys/arch/prep/conf/GENERIC
11171.20Syamt			src/sys/arch/sandpoint/conf/GENERIC
11181.20Syamt			src/sys/arch/sbmips/conf/GENERIC
11191.20Syamt			src/sys/arch/sgimips/conf/GENERIC32_IP3x
11201.20Syamt			src/sys/arch/shark/conf/GENERIC
11211.20Syamt			src/sys/arch/sparc/conf/GENERIC
11221.20Syamt			src/sys/arch/sparc/conf/GENERIC.MP
11231.20Syamt			src/sys/arch/sparc64/conf/GENERIC
11241.20Syamt			src/sys/arch/sparc64/conf/GENERIC.MP
11251.20Syamt			src/sys/arch/sun2/conf/GENERIC
11261.20Syamt			src/sys/arch/sun3/conf/GENERIC
11271.20Syamt			src/sys/arch/vax/conf/GENERIC
11281.20Syamt			src/sys/arch/vax/conf/GENERIC.MP
11291.20Syamt			src/sys/arch/x68k/conf/GENERIC
11301.20Syamt
11311.42Syamt			src/sys/arch/playstation2/conf/GENERIC
11321.42Syamt
11331.97SyamtBranch:		yamt-pdpolicy
11341.97SyamtDescription:	play with page replacement policy
11351.97Syamt		- separate page replacement policy from the rest of kernel
11361.97Syamt		- implement alternative replacement policy
11371.97Syamt		- related read-ahead adjustment?
11381.97SyamtStatus:		Terminated; merged to -current
11391.97SyamtStart Date:	Sun Mar  5 2006
11401.97SyamtEnd Date:	Sat Sep 16 2006
11411.97SyamtBase Tag:	yamt-pdpolicy-base9
11421.97SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
11431.97SyamtScope:		src/sys  (src/common is tagged but not branched)
11441.97SyamtNotes:		
11451.97Syamt
11461.54SyamtBranch:		yamt-readahead
11471.54SyamtDescription:	play with file readahead
11481.58SyamtStatus:		Terminated; merged to -current
11491.54SyamtStart Date:	Mon Nov 14 2005
11501.58SyamtEnd Date:	Wed Nov 30 2005
11511.57SyamtBase Tag:	yamt-readahead-base3
11521.54SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
11531.54SyamtScope:		src/sys
11541.54SyamtNotes:		
11551.54Syamt
11561.60SyamtBranch:		yamt-uio_vmspace
11571.60SyamtDescription:	uio_lwp/uio_segflg -> uio_vmspace
11581.67SyamtStatus:		Terminated; merged to -current
11591.60SyamtStart Date:	Mon Dec 31 2005
11601.67SyamtEnd Date:	Wed Mar  1 2006
11611.66SyamtBase Tag:	yamt-uio_vmspace-base5
11621.60SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
11631.60SyamtScope:		src/sys
11641.60SyamtNotes:		
11651.60Syamt
11661.151SyamtBranch:		yamt-splraiseipl
11671.151SyamtDescription:	finish implementing splraiseipl (and makeiplcookie).
11681.151Syamt		http://mail-index.NetBSD.org/tech-kern/2006/07/01/0000.html
11691.151Syamt
11701.151Syamt		- completes workqueue(9) and netbt.
11711.151Syamt		- fix PR/33218.
11721.151Syamt
11731.151SyamtStatus:		Terminated; merged to -current
11741.151SyamtStart Date:	Mon Sep 18 2006
11751.151SyamtEnd Date:	Fri Dec 22 2006
11761.151SyamtBase Tag:	yamt-splraiseipl-base5
11771.151SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
11781.151SyamtScope:		src/sys  (src/common is tagged but not branched)
11791.151SyamtNotes:		
11801.151Syamt		tested (by who):
11811.151Syamt			alpha		(yamt)
11821.151Syamt			alpha		(pavel)
11831.151Syamt			amd64		(reported privately)
11841.151Syamt			cobalt		(tsutsui)
11851.151Syamt			ews4800mips	(tsutsui)
11861.151Syamt			hp300		(tsutsui)
11871.151Syamt			hpcarm		(reported privately)
11881.151Syamt			i386		(yamt)
11891.151Syamt			macppc		(tsutsui)
11901.151Syamt			news68k		(tsutsui)
11911.151Syamt			sgimips(IP32)	(tsutsui)
11921.151Syamt			sparc(sun4c)	(tsutsui)
11931.151Syamt			sun2		(tsutsui)
11941.151Syamt			sun3		(tsutsui)
11951.151Syamt			sun3x		(tsutsui)
11961.151Syamt			xen		(yamt)
11971.151Syamt
11981.151Syamt		compile-tested:
11991.151Syamt			acorn26
12001.151Syamt			acorn32
12011.151Syamt			algor
12021.151Syamt			amiga
12031.151Syamt			arc
12041.151Syamt			atari
12051.151Syamt			bebox
12061.151Syamt			cats
12071.151Syamt			cesfic
12081.151Syamt			dreamcast
12091.151Syamt			evbarm
12101.151Syamt			evbmips
12111.151Syamt			evbppc(marvell)
12121.151Syamt			evbppc(ibm4xx)
12131.151Syamt			evbsh3
12141.151Syamt			hp700
12151.151Syamt			hpcmips
12161.151Syamt			hpcsh
12171.151Syamt			ia64
12181.151Syamt			ibmnws
12191.151Syamt			iyonix
12201.151Syamt			landisk
12211.151Syamt			luna68k
12221.151Syamt			mac68k
12231.151Syamt			mmeye
12241.151Syamt			mvme68k
12251.151Syamt			mvmeppc
12261.151Syamt			mipsco
12271.151Syamt			netwinder
12281.151Syamt			newsmips
12291.151Syamt			next68k
12301.151Syamt			ofppc
12311.151Syamt			pc532
12321.151Syamt			pmax
12331.151Syamt			pmppc
12341.151Syamt			prep
12351.151Syamt			sandpoint
12361.151Syamt			sbmips
12371.151Syamt			shark
12381.151Syamt			sparc
12391.151Syamt			sparc64
12401.151Syamt			vax
12411.151Syamt			x68k
12421.151Syamt			zaurus
12431.151Syamt
12441.151Syamt		not tested:
12451.151Syamt			pdp10 (i don't know how to build)
12461.151Syamt			sh5 (not buildable with an unrelated problem.)
12471.151Syamt
12481.151Syamt    compile  CAYMAN64/netbsd32_sa.o
12491.151Syamt    cc1: warnings being treated as errors
12501.151Syamt    /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c: In function 'netbsd32_sa_ucsp':
12511.151Syamt    /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c:126: warning: implicit declaration of function '_UC_MACHINE32_SP'
12521.151Syamt    --- netbsd32_sa.o ---
12531.151Syamt    *** [netbsd32_sa.o] Error code 1
12541.151Syamt    1 error
12551.151Syamt
12561.151Syamt		notyet:
12571.151Syamt			amigappc
12581.151Syamt			playstation2
12591.151Syamt
12601.79SbriggsBranch:		yamt-vop
12611.79SbriggsDescription:	remove several VOPs
12621.79SbriggsStatus:		Terminated; merged to -current
12631.79SbriggsStart Date:	Wed Oct 19 2005
12641.79SbriggsEnd Date:	Wed Nov  2 2005
12651.79SbriggsBase Tag:	yamt-vop-base3
12661.68SyamtMaintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
12671.68SyamtScope:		src/sys
12681.79SbriggsNotes:		http://mail-index.NetBSD.org/tech-kern/2005/09/27/0000.html
12691.71Speter
12701.98SgdamoreBranch:		gdamore-uart
12711.98SgdamoreDescription:	Add register table support to com driver.
12721.98SgdamoreStatus:		Active
12731.98SgdamoreStart Date:	14 June 2006
12741.98SgdamoreEnd Date:	13 July 2006
12751.98SgdamoreBase Tag:	gdamore-uart-base
12761.98SgdamoreMaintainer:	Garrett D'Amore <gdamore@NetBSD.org>
12771.98SgdamoreScope:		kernel
12781.98SgdamoreNotes:		Results in consolidation of Alchemy (mips/dev/alchemy/aucom.c)
12791.98Sgdamore		com support, and also removes a nasty hack from Atheros com.
12801.98Sgdamore
12811.79Sbriggs########################################################################
12821.1Slukem# Other:
12831.79Sbriggs########################################################################
12841.1Slukem
12851.1SlukemBranch:		magnum
12861.1SlukemDescription:	?
12871.1SlukemStatus:		?
12881.1SlukemStart Date:
12891.1SlukemEnd Date:
12901.1SlukemBase Tag:	magnum-base
12911.1SlukemMaintainer:	?
12921.1SlukemScope:		kernel
12931.1SlukemNotes:
12941.69Selad
1295