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