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