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