BRANCHES revision 1.165
1#	$NetBSD: BRANCHES,v 1.165 2007/03/20 12:17:17 yamt 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 Febuary 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 initializtion, 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:		gmcgarry_ctxsw
258Description:	Separate scheduler from context-switch code
259Status:		Dormant
260Start Date:	18 December 2002
261End Date:
262Base Tag:	gmcgarry_ctxsw_base
263Maintainer:	Gregory McGarry <gmcgarry@NetBSD.org>
264Scope:		kernel
265Notes:		Removing knowledge of the schedular and its run queues
266		from the machine-dependent context switch code is the
267		first step in cleaning up the scheduler.  It is necessary
268		for the newlock branch, making the scheduler SMP friendly,
269		adding real-time scheduler extensions, and reducing the
270		number of code paths for LWP and proc switching.
271
272Branch:		gmcgarry_ucred
273Description:	Integrate and encapsulate user credentials
274Status:		Dormant
275Start Date:	18 December 2002
276End Date:
277Base Tag:	gmcgarry_ucred_base
278Maintainer:	Gregory McGarry <gmcgarry@NetBSD.org>
279Scope:		kernel
280Notes:		merge pcred and ucred and poolify
281
282Branch:		kame
283Description:	KAME Project
284Status:		Dormant
285Start Date:	28 Jun 1999
286End Date:
287Base Tag:
288Maintainer:	Jun-ichiro itojun Hagino <itojun@NetBSD.org>
289Scope:		kernel
290Notes:		http://www.kame.net
291		Used for "reference" purposes for early part of KAME
292		integration effort.  The branch is not actively used, as I
293		(itojun) use patch(1) and diff(1) for the KAME syncs.
294
295Branch:		kent-audio2
296Description:	In-kernel audio mixer
297Status:		Active
298Start Date:	Sun Jan 16 2005
299End Date:	
300Base Tag:	kent-audio2-base
301Maintainer:	TAMURA Kent <kent@NetBSD.org>
302Scope:		kernel (audio device drivers)
303Notes:		http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html
304		Please consult with the maintainer before committing
305		to this branch.
306		This branch is not expected to be compilable yet.
307
308Branch:		matt-timespec
309Description:	Convert the kernel to struct timespec as its primary time
310		storage mechanism.
311Status:		Active
312Start Date:	2005-02-19
313End Date:
314Base Tag:	
315Maintainer:	Matt Thomas <matt@NetBSD.org>
316Scope:		kernel
317Notes:	
318
319Branch:		newlock
320Description:	New locking primitives, based on Solaris's
321Status:		Terminated
322Start Date:	March 9, 2002
323End Date:	Febuary 12, 2007
324Base Tag:	newlock-base
325Maintainer:	Jason R. Thorpe <thorpej@NetBSD.org>
326Scope:		Kernel
327Notes:		The goal is to replace the existing lockmgr() and
328		simple_lock() based locking mechanisms with the
329		primitives found in Solaris: mutexes and rwlocks.
330		Superseeded by the newlock2 branch.
331
332Branch:		newlock2
333Description:	New locking primitives, based on Solaris's
334Status:		Terminated
335Start Date:	September 9, 2006
336End Date:	Febuary 12, 2007
337Base Tag:	newlock2-base
338Maintainer:	Andrew Doran <ad@NetBSD.org>
339Scope:		Kernel
340Notes:		As per the newlock branch, however given the amount of time
341		the original branch has lain dormant, a new one has been
342		created.  Goals:
343		- Implement new locking primitives on most-used ports.
344		- Minor locking improvements.
345		- Remove spinlockmgr().
346
347Branch:	  	pkgviews
348Description:  	package views, enabling multiple conflicting packages to co-exist
349Status:		Active
350Start Date:	22 July 2002
351End Date:
352Base Tag:	pkgviews
353Maintainer:	Alistair Crooks <agc@NetBSD.org>
354Scope:		pkgsrc, basesrc/usr.sbin/pkg_install
355Notes:		A more flexible infrastructure for third-party packages by
356		allowing multiple conflicting packages and versions to co-exist
357		within the same tree
358
359Branch:		rpaulo-netinet-merge-pcb
360Description:	merge in6pcb with inpcb
361Status:		Dormant
362Start Date:	Wed Feb 01 2006
363End Date:	
364Base Tag:	rpaulo-netinet-merge-pcb-base
365Maintainer:	Rui Paulo <rpaulo@NetBSD.org>
366Scope:		src/sys
367Notes:		No longer active due to the lack of time. If you plan to
368		continue this branch, sys/netinet/in_pcb.h already contains
369		the proposed structure layout (which was roughly discussed
370		in the tech-net mailing list).
371		I also defined INP_*() macros to mimicate FreeBSD's inpcb
372		locking style, but currently they do nothing and are not
373		yet called at the correct places (needs discussion about
374		kernel fine-grained locking).
375		To continue this branch, one needs to read all the relevant
376		inpcb/in6pcb source files and change the function names,
377		structure names, structure fileds according to the new
378		layout (in6pcb is gone).
379		Don't try to build a kernel from this branch because it won't
380		work. The missing pieces required to do a complete build
381		were not committed because they were incomplete and generated
382		panics.
383		You shouldn't need to worry about KAME syncs because
384		they did most of them by now.
385		After the work is done, you are required to test the branch
386		(before the merge to -current) with an interop IPv6 test.
387		More info at: http://www.tahi.org/
388
389Branch:		rtr-xorg-branch
390Description:	xorg & static build alterations to src/x11
391Status:		Active
392Start Date:	Nov 15 2004
393End Date:	
394Base tag:	rtr-xorg-branch-base
395Maintainer:	Tyler R. Retzlaff <rtr@NetBSD.org>
396Scope:		x11
397		distrib/sets/lists
398		share/mk/bsd.x11.mk
399		share/mk/bsd.own.mk
400		etc/mtree/NetBSD.dist
401Notes:		Requires parts of xsrc/xfree (HEAD)
402		xsrc/local, xsrc/xfree/xc/programs/Xserver/hw/netbsd
403		Requires xorg (XORG-6_8_1)
404
405Branch:		thorpej-devvp
406Description:	replace dev_t with struct vnode * in devsw entry points
407Status:		Active
408Start Date:	Sep 6 2001
409End Date:
410Base Tag:	thorpej-devvp-base
411Maintainer:	Jason Thorpe <thorpej@NetBSD.org>
412Scope:		syssrc
413Notes:		Kernels built from this branch are not expected
414		to function correctly at this time.
415
416		Ports known to compile on this branch:
417			alpha
418			i386
419
420Branch:		vmlocking
421Description:	Make memory allocators and trap handling MP safe
422Status:		Active
423Start Date:	13 March 2007
424End Date:
425Base Tag:	vmlocking-base
426Maintainer:	Andrew Doran <ad@NetBSD.org>
427Scope:		kernel
428Notes:
429		- Replace all simplelocks with mutexes
430		- Remove spinlockmgr
431		- Make memory allocators MP safe
432		- Make trap handling MP safe: push kernel lock acquire
433		  back into pager ops.
434
435		Only i386 is currently update.  Most per architecture
436		changes need to be made in the pmap module.  LFS is not
437		currently stable due interaction between the pagedaemon (?)
438		and the HOLDRELE() in lfs_segment.c.  It may trash your
439		filesystem..
440
441		Most of the locks replaced are now sleep/adaptive locks or
442		spin locks at IPL_VM.  Assuming audio interrupt handlers
443		are made MP safe there are far fewer potential deadlocks
444		against the kernel lock.
445
446		v_interlock becomes an adaptive mutex so now acquring
447		it can potentially block, similarly for other locks
448		that were before simplelocks.  This needs to be audited
449		carefully.
450
451		Use vnodes in general needs to be audited, as vnodes can
452		now be inspected without the kernel lock held.
453
454		Acquiring locks in the pmap module can now block, meaning
455		that the current pmap, cpu or lazy pmap status can change
456		out from underneath the requestor.  This also needs to be
457		audited.
458
459		Currently, i386 has the necessary modifications, and has
460		trap handling and a few calls to allocators out from under
461		the kernel lock.  There are still problems that need to be
462		debugged.
463
464		Need to check that whenever a lock is initialized, it is
465		also destroyed.
466
467		Lots of testing required.
468
469Branch:		yamt-idlelwp
470Description:	idle lwp, and some changes depending on it.
471
472		1. separate context switching and thread scheduling.
473		   (cf. gmcgarry_ctxsw)
474		2. implement idle lwp.
475		3. clean up related MD/MI interfaces.
476		4. implement interrupt LWPs.
477		5. make scheduler(s) modular.
478
479Status:		Active
480Start Date:	Fri Feb 17 2007
481End Date:	
482Base Tag:	yamt-idlelwp-base3
483Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
484Scope:		src/sys  (src/common is tagged but not branched)
485Notes:		
486		how to adapt a port?
487
488		- unify cpu_switch, cpu_exit, cpu_switchto into
489		  a single cpu_switchto.  see cpu_switchto.9.
490
491		- implement cpu_idle.  see cpu_idle.9.
492
493		- add a flag argument to cpu_need_resched.
494		  handle RESCHED_IMMED flag, which means "cause a preemption
495		  as soon as possible."  eg. in the case of MULTIPROCESSOR,
496		  send an IPI to the target cpu.
497
498		- "curlwp == NULL" is not a valid check for idle state anymore.
499		  use "(curlwp->l_flag & LW_IDLE) != 0" instead.  curlwp is
500		  almost always non-NULL, with exceptions like early on boot.
501
502		- remove idle pcbs.
503
504		- (if MULTIPROCESSOR) allocate idle lwps for non-primary
505		  processors by calling create_idle_lwp.  tweak processor
506		  trampoline code.
507
508		- (if schedhz!=0) call schedclock regardless of the value of
509		  curlwp.
510
511		- of course, update MD users of scheduler/switching API.
512
513Branch:		yamt-lazymbuf
514Description:	implement and evaluate lazy mapping of mbuf external data pages
515		it's intended as the first step of larger changes.
516			1. support operations (esp. bus_dma load) on
517			   unmapped mbuf.
518			2. unify mbuf and buf.
519			   (or, at least some parts of them)
520			3. then it should be trivial to implement
521			   i/o coalescing, etc.
522Status:		Active
523Start Date:	Wed Jul  6 2005
524End Date:	
525Base Tag:	yamt-lazymbuf-base4
526Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
527Scope:		src/sys  (src/common is tagged but not branched)
528Notes:		
529
530Branch:		reinoud-bufcleanup
531Description:	implement and evaluate struct buf usage cleanup strategies.
532		Ideas currently in mind (preference for b):
533		a)
534			1. use of bio_ops per buffer.
535			2. allow chaining/overloading of functions in bio_ops
536			   and provide some private context.
537			3. extend the bio_ops with commenly used functionality
538			   like pending action counting, custom context passing,
539			   last minute processing of buffer data, buffer cache
540			   etc.
541			4. investigate the use of the kcont()
542			   continuation-passing framework for async io
543			   completion notification for bufs
544			...
545		b)
546			1. all sequencing use of B_CALL replaced by
547			   device-threads, if possible generic code around BUFQ
548			2. possibly use kcont() for async IO finished signalling
549			3. counter of pending and queued actions requestable
550			   by IOCTL interface?
551			4. implement `last minute buffer fixup' calls and maybe
552			   even finished I/O calls as vnode operations
553			...
554Status:		Active
555Start Date:	Thu Mar 15 2007
556End Date:
557Base Tag:	reinoud-bufcleanup-base
558Maintainer:	Reinoud Zandijk <reinoud@NetBSD.org>
559Scope:		src/sys and src/common
560Notes:		Used as expiriment sandbox and if successful hopefully one day
561		to be intergrated.
562
563
564########################################################################
565# Individual developers' branches (Terminated):
566########################################################################
567
568Branch:		bouyer-scsipi
569Description:	Integration of atapi support
570Status:		Terminated
571Start Date:
572End Date:
573Base Tag:
574Maintainer:	Manuel Bouyer <bouyer@NetBSD.org>
575Scope:		kernel
576Notes:		Superseded by thorpej_scsipi
577
578Branch:		bouyer-xen2
579Description:	update xen port to xen 2.0, with support for domain0 operations
580Status:		Terminated
581Start Date:	Dec 13 2004
582End Date:	Mar 10 2005
583Base Tag:	netbsd-2-base
584Maintainer:	Manuel Bouyer <bouyer@NetBSD.org>
585Scope:		src/sys/arch/xen
586Notes:
587
588Branch: 	chap-midi
589Description:	Renovation of MIDI support
590Status: 	Terminated; merged to -current
591Start Date:	19 May 2006
592End Date:	30 Jun 2006
593Base Tag:	chap-midi-base
594Maintainer:	Chapman Flack <chap@NetBSD.org>
595Scope:		sys, share/man, usr.bin
596Notes:
597
598Branch:		chs-ubc
599Description:	Unified Buffer Cache
600Status:		Terminated
601Start Date:
602End Date:
603Base Tag:	chs-ubc-base
604Maintainer:	Chuck Silvers <chs@NetBSD.org>
605Scope:		kernel
606Notes:
607
608Branch:		chs-ubc2
609Description:	 Unified Buffer Cache
610Status:		Terminated; merged to -current
611Start Date:
612End Date:
613Base Tag:	chs-ubc2-base, chs-ubc2-newbase
614Maintainer:	Chuck Silvers <chs@NetBSD.org>
615Scope:		kernel
616Notes:
617
618Branch:		cjs-build-against-obj-dir
619Description:	?
620Status:		?
621Start Date:
622End Date:
623Base Tag:
624Maintainer:	Curt Sampson <cjs@NetBSD.org>
625Scope:		Entire tree.
626Notes:
627
628Branch:		eeh-paddr_t
629Description:	use separate types for virtual vs. physical addresses
630Status:		Terminated; merged to -current
631Start Date:
632End Date:
633Base Tag:	eeh-paddr_t-base
634Maintainer:	Eduardo Horvath <eeh@NetBSD.org>
635Scope:		kernel
636Notes:		This is needed to support 32-bit kernels on sparc64.
637
638Branch:		elad-kernelauth
639Description:	Native NetBSD implementation of Apple's kernel authorization
640		based on TN2127. This is a "clean-room" implementation to
641		avoid any licensing issues.
642Status:		Terminated; merged to -current
643Start Date:	Tue Mar	 7 2006
644End Date:	Mon May 15 2006
645Base Tag:	elad-kernelauth-base
646Maintainer:	Elad Efrat <elad@NetBSD.org>
647Scope:		src/sys, src/share/man/man9/Makefile,
648		src/share/man/man9/kauth.h, src/distrib/sets/lists/comp/mi
649Notes:
650
651Branch:		fvdl-softdep
652Description:	FFS soft dependencies
653Status:		Terminated; merged to -current
654Start Date:
655End Date:
656Base Tag:	fvdl-softdep-base
657Maintainer:	Frank van der Linden <fvdl@NetBSD.org>
658Scope:		kernel
659Notes:
660
661Branch:		gehenna-devsw
662Description:	auto-generation of devsw table
663Status:		Terminated
664Start Date:	16 May 2002
665End Date:	6 Sep 2002
666Base Tag:	gehenna-devsw-base
667Maintainer:	MAEKAWA Masahide <gehenna@NetBSD.org>
668Scope:		syssrc
669Notes:		The goal is to get rid of the existing device switch tables in
670		port-dependent conf.c and to generate them dynamically by
671		config(8).
672
673Branch:		is-newarp
674Description:	ARP for non-Ethernet
675Status:		Terminated; merged before NetBSD 1.3
676Start Date:	1996/10/13
677End Date:	1997/03/15
678Base Tag:	is-newarp-base
679Maintainer:	Ignatios Souvatzis <is@NetBSD.org>
680Scope:		kernel
681Notes:
682
683Branch:		kenh-if-detach
684Description:	Interface detach support.
685Status:		?
686Start Date:
687End Date:
688Base Tag:	kenh-if-detach-base
689Maintainer:	Ken Hornstein <kenh@NetBSD.org>
690Scope:		kernel
691Notes:
692
693Branch:		kent-audio1
694Description:	Audio converter pipeline
695Status:		Terminated; merged to -current
696Start Date:	Tue Dec  7 2004
697End Date:	Tue Jan 11 2005
698Base Tag:	kent-audio1-base
699Maintainer:	TAMURA Kent <kent@NetBSD.org>
700Scope:		kernel (audio device drivers)
701Notes:		http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html
702		Please consult with the maintainer before committing
703		to this branch.
704
705Branch:		kqueue
706Description:	kqueue kernel event notification mechanism (from FreeBSD)
707Status:		Terminated; merged to -current
708Start Date:	Tue Jul 10 23:08:38 EST 2001
709End Date:	Tue Oct 24 09:14:14 GMT 2002
710Base Tag:	kqueue-base
711Maintainer:	Jaromir Dolecek <jdolecek@NetBSD.org>
712Scope:		kernel, libc/sys, share/man/man9, usr.bin/fstat
713Notes:		Integration of FreeBSD's kqueue(2) mechanism, with various
714		local internal changes to better suit NetBSD, and
715		enhancements such as looking up filters by name or
716		number, and dynamic registration of "user" filters.
717		The work is complete as is, but is awaiting more
718		feedback from various kernel gurus before going mainline.
719
720Branch:		ktrace-lwp
721Description:	ktrace support for lwp ids.
722Status:		Terminated; merged to -current
723Start Date:	Wed Jul  2 15:27:30 UTC 2003
724End Date:	Sun Dec 11 12:25:29 UTC 2005
725Base Tag:	ktrace-lwp-base
726Maintainer:	Darren Reed <darrenr@NetBSD.org>
727Scope:		sys
728Notes:		
729
730Branch:		marc-pcmcia
731Description:	PCMCIA support
732Status:		Terminated; merged to -current
733Start Date:
734End Date:
735Base Tag:	marc-pcmcia-base, marc-pcmcia-bp
736Maintainer:	Marc Horowitz <marc@NetBSD.org>
737Scope:		kernel
738Notes:
739
740Branch:		minoura_x68k_bus_h
741Description:	bus_space(9) and bus_dma(9) implementation for x68k
742Status:		Terminated; merged to -current
743Start Date:	23 Dec 1998
744End Date:	16 Mar 1999
745Base Tag:	minoura_x68k_bus_h-base
746Maintainer:	Minoura Makoto <minoura@NetBSD.org>
747Scope:		sys/arch/x68k
748Notes:
749
750Branch:		minoura-xpg4dl
751Description:	Citrus Project locale subsystem
752Status:		Terminated; (partly) merged to -current
753Start Date:	28 March 2000
754End Date:
755Base Tag:	minoura-xpg4dl-base
756Maintainer:	Minoura Makoto <minoura@NetBSD.org>
757Scope:		basesrc, syssrc, sharesrc
758Notes:		Citrus Project is developing dynamically-loadable, codeset-
759		independent locale subsystem.  Part of the implementation
760		(LC_CTYPE) called XPG4DL is now integrated to -current.
761
762Branch:		mjf-ufs-trans
763Description:	filesystem transactions for ufs
764Status:		Active
765Start Date:	12 March 2007
766End Date:
767Base Tag:	mjf-ufs-trans-base
768Maintainer:	Matt Fleming <mjf@NetBSD.org>
769Scope:		kernel
770Notes:
771
772Branch:		mrg-vm-swap
773Description:	dynamic swap allocation, swap-to-files support
774Status:		Terminated; abondoned for mrg-vm-swap2
775Start Date:	12 February 1997
776End Date:	15 March 1997
777Base Tag:	[none]
778Maintainer:	Matthew R. Green <mrg@NetBSD.org>
779Scope:		kernel
780Notes:
781
782Branch:		mrg-vm-swap2
783Description:	dynamic swap allocation, swap-to-files support
784Status:		Terminated; merged to -current
785Start Date:	4 May 1997
786End Date:	12 June 1997
787Base Tag:	mrg-vm-swap2-base
788Maintainer:	Matthew R. Green <mrg@NetBSD.org>
789Scope:		kernel
790Notes:
791
792Branch:		nathanw_sa
793Description:	Scheduler activations
794Status:		Terminated; merged to -current
795Start Date:	5 March 2001
796End Date:	18 January 2003
797Base Tag:	nathanw_sa_base
798Maintainer:	Nathan Williams <nathanw@NetBSD.org>
799Scope:		kernel, libc, libkvm, libpthread, libpthread_dbg, include, 
800		bin/ps usr.bin/systat usr.bin/top usr.bin/w
801		gnu/dist/toolchain/gdb gnu/usr.bin/gdb
802Notes:		The idea of scheduler activations is described in the
803		classic paper by Anderson et al., in ACM Transactions
804		a on Computer Systems volume 10 issue 1 (1992),which
805		can be found at
806		http://www.acm.org/pubs/citations/journals/tocs/1992-10-1/p53-anderson/
807		Many ideas in the implementation are based on the
808		implementation of scheduler activations added to Mach
809		3.0 and described by Davis et al. in the University of
810		Washington CS tech report 92-08-93, which can be found
811		at
812		ftp://ftp.cs.washington.edu/tr/1992/08/UW-CSE-92-08-03.PS.Z
813
814		My USENIX paper on the subject can be found at
815		http://web.mit.edu/nathanw/www/usenix/
816
817		Please consult with the maintainer before committing
818		to this branch.
819		Other tags starting with nathanw_sa reserved for
820		branch management and are not guaranteed to be stable.
821
822		Trunk tagged with "nathanw_sa_before_merge" prior to
823		merging branch down to trunk.  Branch tagged with
824		"nathanw_sa_end" to indicate the ending revision of
825		the branch.
826
827Branch:		perseant-lfsv2
828Description:	LFS incompatible on-disk data structure changes
829Status:		Terminated
830Start Date:	27 June 2001
831End Date:	16 July 2001
832Base Tag:	perseant-lfsv2-base
833Maintainer:	Konrad Schroder <perseant@NetBSD.org>
834Scope:		basesrc/{sbin/*lfs,libexec/lfs_cleanerd,usr.sbin/dumplfs}, syssrc/sys/ufs
835Notes:		This branch should be short-lived, I expect to merge as soon
836		as the data structures required for unremove are in and tested.
837
838Branch:		peter-altq
839Description:	New ALTQ framework:
840		- sync with KAME sources
841		- share mtag/name mapping functions
842		- separate altq + pf attachment
843Status:		Terminated; merged to -current
844Start Date:	March 16, 2006
845End Date:	October 12, 2006
846Base Tag:	peter-altq-base
847Maintainer:	Peter Postma <peter@NetBSD.org>,
848		Martin Husemann <martin@NetBSD.org>,
849		Matthias Scheler <tron@NetBSD.org>
850Scope:		dist/pf dist/ipf distrib/sets/lists sys usr.sbin/altq
851Notes:		Only the first item in the description was finished
852		in this branch.
853
854Branch:		sommerfeld_i386mp_1
855Description:	Multiprocessor support for i386 using Intel MP BIOS.
856Status:		Terminated; merged to -current
857Start Date:	21 Feb 2000
858End Date:	01 Oct 2002
859Base Tag:	sommerfeld_i386mpbase_1
860Maintainer:	Bill Sommerfeld <sommerfeld@NetBSD.org>
861Scope:		sys/arch/i386
862Notes:
863		Code committed to the branch has booted to multiuser 
864		on at least one system.
865
866		Not guaranteed to compile against mainline since -current
867		may have changed incompatibly with the last branch update;
868		use "cvs update -D" to roll-back the rest of the tree to match.
869
870		Please get explicit permission from the maintainer 
871		before each commit, or your changes will be backed out.
872		Other tags starting with sommerfeld_ are private to 
873		the developer and are guaranteed to be unstable.
874		Only the maintainer should move tags.
875
876		Note that this branch uses a DIFFERENT scheme for 
877		synching with the mainline.  the maintainer uses some private
878		scripts for keeping them in synch; if you make commits 
879		to the branch to "resynchronize" things, you'll
880		probably do it wrong; instead, ask the maintainer to
881		resynchronize things.
882
883		See sys/arch/i386/TODO on the branch for a list of known
884		issues with the branch.
885
886Branch:		thorpej-mips-cache
887Description:	overhaul MIPS cache support code
888Status:		Terminated; merged to -current
889Start Date:	Oct 23 2001
890End Date:	Nov 14 2001
891Base Tag:	thorpej-mips-cache-base
892Scope:		syssrc
893Notes:		This branch needs more debugging, testing, and more
894		ports need to be converted to the new world order.
895
896		The following processors have had cache ops
897		written:
898
899			* R2000/R3000 (cache_r3k) -- light testing,
900			  needs to be beat on a lot more to make
901			  sure it's working.
902
903			* R4000/R4400 (cache_r4k) -- mhitch@NetBSD.org
904			  tracked down a bug, which has been fixed.
905
906			  Confirmed working on R4000-with-L2.
907
908			  Confirmed working on R4400-no-L2 and
909			  R4400-with-L2.
910
911			* R4600/R5000 (cache_r5k) -- shin@NetBSD.org
912			  has committed fixes to this code.
913
914			  Confirmed working on R4600 v2 (SGI IP-22 with
915			  no SysAD L2 cache).
916
917			  Confirmed working on RM5260 (Algorithmics P-5064).
918
919			* TX39 (cache_tx39) -- uch@NetBSD.org has
920			  committed fixes to this code.  Awaiting
921			  confirmation that it is working properly.
922
923			* R5900 (cache_r5900) -- uch@NetBSD.org has
924			  written this code and tested it on a
925			  PlayStation 2.
926
927		The following ports have been updated to compile (and
928		use optimized-for-processor bus_dma routines).  Those
929		that have been tested and work are marked with [WORKING].
930
931			* algor		[WORKING]
932
933			* arc		[WORKING]
934
935			* pmax		[WORKING]
936
937			* playstation2	[WORKING]
938					Needs optimized bus_dmamap_sync().
939
940			* hpcmips	[need verification that this is working]
941					Needs optimized bus_dmamap_sync().
942
943			* sgimips	[WORKING]
944					Needs optimized bus_dmamap_sync().
945
946			* cobalt	[need testing]
947
948			* mipsco	[need testing]
949
950			* newsmips	[need testing]
951
952Branch:		thorpej_scsipi
953Description:	SCSI/ATAPI midlayer rewrite.
954Status:		Terminated; merged to -current
955Start Date:
956End Date:	Apr 25 2001
957Base Tag:	thorpej_scsipi_base, thorpej_scsipi_nbase
958Maintainer:	Manuel Bouyer <bouyer@NetBSD.org>,
959		Jason Thorpe <thorpej@NetBSD.org>
960Scope:		syssrc
961Notes:		When a change from -current is pulled up please move the
962		thorpej_scsipi_base tag to the revision you're syncing with.
963		thorpej_scsipi_nbase is private to maintainer (only
964		used when syncing the whole branch with HEAD).
965		Just before the merge, syssrc has been tagged with
966		thorpej_scsipi_beforemerge
967
968Branch:		thorpej-signal
969Description:	?
970Status:		?
971Start Date:
972End Date:
973Base Tag:	thorpej-signal-base
974Maintainer:	Jason Thorpe <thorpej@NetBSD.org>
975Scope:		kernel
976Notes:
977
978Branch:		thorpej-setroot
979Description:	?
980Status:		Terminated; merged to -current
981Start Date:
982End Date:
983Base Tag:
984Maintainer:	Jason Thorpe <thorpej@NetBSD.org>
985Scope:		kernel
986Notes:
987
988Branch:		simonb-timecounters
989Description:	Port FreeBSD timecounters to NetBSD
990Status:		Terminated
991Start Date:	Sat Feb 04 2006
992End Date:	Wed Jun 07 2006
993Base Tag:	simonb-timecounters-base
994Maintainer:	Simon Burge <simonb@NetBSD.org>,
995		Frank Kardel <kardel@NetBSD.org>
996Scope:		sys, sbin/savecore, usr.bin/vmstat, usr.sbin/ntp
997Notes:		early (partial conversion) commit to -current
998		ok'ed by core@ on 20060605 for testing and further
999		simplified conversion
1000
1001Branch:		wrstuden-devbsize
1002Description:	Modify buffer cache to deal with different devices having
1003		different block sizes. Also DEV_BSIZE would go away.
1004Status:		Terminated
1005Start Date:	Aug or Sept 1999
1006End Date:	1 Apr 2000
1007Base tag:	wrstuden-devbsize-base
1008Maintainer:	Bill Studenmund <wrstuden@NetBSD.org>
1009Scope:		kernel
1010Notes:		No longer active due to lack of time, and introduction
1011		of UBC. In terms of UBC, the primary cache for
1012		file data is the VM cache, which needs to operate
1013		in terms of VM pages. As no existing device has native
1014		pages the same size as our VM pages, there already is
1015		a mapping going on between the VM system and the
1016		underlying blocks. So it would be easier and cleaner
1017		to adjust that to deal w/ different block sizes.
1018		Also with UBC, all i/o is in terms of bytes at an offset
1019		with a certain length, so the exact block size isn't a big
1020		deal.
1021
1022		Any other wrstuden-devbsize tag may (and should) go away.
1023
1024Branch:		yamt-km, yamt-km-doc
1025Description:	simplify/improve kernel memory management and bootstrap
1026Status:		Terminated; merged to -current
1027Start Date:	Tue Jan 25 2005
1028End Date:	Fri Apr  1 2005
1029Base Tag:	yamt-km-base{,2,3,4}, yamt-km-doc-base
1030Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
1031Scope:		yamt-km: src/sys
1032		yamt-km-doc: src/share/man/man9/uvm.9
1033Notes:		http://mail-index.NetBSD.org/tech-kern/2004/12/25/0005.html
1034
1035		the followings are per-port status.
1036		(account names mean "tested by".)
1037
1038		works enough to go to multiuser:
1039			alpha, i386, xen (yamt@)
1040			pc532 (simonb@)
1041			alpha, i386, mac68k, macppc, pmax, shark,
1042			    sparc, sparc64, sun3, x68k (chs@)
1043			cobalt, dreamcast, hp300, news68k, newsmips,
1044			    sun3x (tsutsui@)
1045			amiga (mhitch@)
1046			cats, hp700 (skrll@)
1047			xen (bouyer@)
1048
1049		known to have the same problem as trunk:
1050			vax (chs@, stuck while running kvm_mkdb)
1051
1052		known to have a problem:
1053			luna68k (and, if any, other m68k ports which use TTR)
1054			needs to be revisited.
1055			-> for luna68k, although not tested,
1056			   Sysmap has been moved to avoid kva conflict with
1057			   I/O ranges.
1058
1059		buildable:
1060			src/sys/arch/acorn26/conf/GENERIC
1061			src/sys/arch/acorn32/conf/GENERIC
1062			src/sys/arch/algor/conf/P6032
1063			src/sys/arch/alpha/conf/GENERIC
1064			src/sys/arch/alpha/conf/GENERIC.MP
1065			src/sys/arch/amd64/conf/GENERIC
1066			src/sys/arch/amd64/conf/GENERIC.MP
1067			src/sys/arch/amiga/conf/GENERIC
1068			src/sys/arch/arc/conf/GENERIC
1069			src/sys/arch/atari/conf/MILAN-PCIIDE
1070			src/sys/arch/bebox/conf/GENERIC
1071			src/sys/arch/cats/conf/GENERIC
1072			src/sys/arch/cesfic/conf/GENERIC
1073			src/sys/arch/cobalt/conf/GENERIC
1074			src/sys/arch/dreamcast/conf/GENERIC
1075			src/sys/arch/evbarm/conf/TS7200
1076			src/sys/arch/evbppc/conf/WALNUT
1077			src/sys/arch/evbsh3/conf/COMPUTEXEVB
1078			src/sys/arch/evbsh5/conf/CAYMAN64
1079			src/sys/arch/hp300/conf/GENERIC
1080			src/sys/arch/hp700/conf/GENERIC
1081			src/sys/arch/hpcarm/conf/JORNADA728
1082			src/sys/arch/hpcmips/conf/GENERIC
1083			src/sys/arch/hpcsh/conf/GENERIC
1084			src/sys/arch/hpcsh/conf/HPW650PA
1085			src/sys/arch/i386/conf/GENERIC
1086			src/sys/arch/i386/conf/GENERIC.MP
1087			src/sys/arch/i386/conf/XEN0
1088			src/sys/arch/i386/conf/XENU
1089			src/sys/arch/ibmnws/conf/GENERIC
1090			src/sys/arch/iyonix/conf/GENERIC
1091			src/sys/arch/luna68k/conf/GENERIC
1092			src/sys/arch/mac68k/conf/GENERIC
1093			src/sys/arch/macppc/conf/GENERIC
1094			src/sys/arch/macppc/conf/GENERIC.MP
1095			src/sys/arch/mipsco/conf/GENERIC
1096			src/sys/arch/mmeye/conf/GENERIC
1097			src/sys/arch/mvme68k/conf/GENERIC
1098			src/sys/arch/netwinder/conf/GENERIC
1099			src/sys/arch/news68k/conf/GENERIC
1100			src/sys/arch/newsmips/conf/GENERIC
1101			src/sys/arch/next68k/conf/GENERIC
1102			src/sys/arch/ofppc/conf/GENERIC
1103			src/sys/arch/pc532/conf/GENERIC
1104			src/sys/arch/pmax/conf/GENERIC
1105			src/sys/arch/prep/conf/GENERIC
1106			src/sys/arch/sandpoint/conf/GENERIC
1107			src/sys/arch/sbmips/conf/GENERIC
1108			src/sys/arch/sgimips/conf/GENERIC32_IP3x
1109			src/sys/arch/shark/conf/GENERIC
1110			src/sys/arch/sparc/conf/GENERIC
1111			src/sys/arch/sparc/conf/GENERIC.MP
1112			src/sys/arch/sparc64/conf/GENERIC
1113			src/sys/arch/sparc64/conf/GENERIC.MP
1114			src/sys/arch/sun2/conf/GENERIC
1115			src/sys/arch/sun3/conf/GENERIC
1116			src/sys/arch/vax/conf/GENERIC
1117			src/sys/arch/vax/conf/GENERIC.MP
1118			src/sys/arch/x68k/conf/GENERIC
1119
1120			src/sys/arch/playstation2/conf/GENERIC
1121
1122Branch:		yamt-pdpolicy
1123Description:	play with page replacement policy
1124		- separate page replacement policy from the rest of kernel
1125		- implement alternative replacement policy
1126		- related read-ahead adjustment?
1127Status:		Terminated; merged to -current
1128Start Date:	Sun Mar  5 2006
1129End Date:	Sat Sep 16 2006
1130Base Tag:	yamt-pdpolicy-base9
1131Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
1132Scope:		src/sys  (src/common is tagged but not branched)
1133Notes:		
1134
1135Branch:		yamt-readahead
1136Description:	play with file readahead
1137Status:		Terminated; merged to -current
1138Start Date:	Mon Nov 14 2005
1139End Date:	Wed Nov 30 2005
1140Base Tag:	yamt-readahead-base3
1141Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
1142Scope:		src/sys
1143Notes:		
1144
1145Branch:		yamt-uio_vmspace
1146Description:	uio_lwp/uio_segflg -> uio_vmspace
1147Status:		Terminated; merged to -current
1148Start Date:	Mon Dec 31 2005
1149End Date:	Wed Mar  1 2006
1150Base Tag:	yamt-uio_vmspace-base5
1151Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
1152Scope:		src/sys
1153Notes:		
1154
1155Branch:		yamt-splraiseipl
1156Description:	finish implementing splraiseipl (and makeiplcookie).
1157		http://mail-index.NetBSD.org/tech-kern/2006/07/01/0000.html
1158
1159		- completes workqueue(9) and netbt.
1160		- fix PR/33218.
1161
1162Status:		Terminated; merged to -current
1163Start Date:	Mon Sep 18 2006
1164End Date:	Fri Dec 22 2006
1165Base Tag:	yamt-splraiseipl-base5
1166Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
1167Scope:		src/sys  (src/common is tagged but not branched)
1168Notes:		
1169		tested (by who):
1170			alpha		(yamt)
1171			alpha		(pavel)
1172			amd64		(reported privately)
1173			cobalt		(tsutsui)
1174			ews4800mips	(tsutsui)
1175			hp300		(tsutsui)
1176			hpcarm		(reported privately)
1177			i386		(yamt)
1178			macppc		(tsutsui)
1179			news68k		(tsutsui)
1180			sgimips(IP32)	(tsutsui)
1181			sparc(sun4c)	(tsutsui)
1182			sun2		(tsutsui)
1183			sun3		(tsutsui)
1184			sun3x		(tsutsui)
1185			xen		(yamt)
1186
1187		compile-tested:
1188			acorn26
1189			acorn32
1190			algor
1191			amiga
1192			arc
1193			atari
1194			bebox
1195			cats
1196			cesfic
1197			dreamcast
1198			evbarm
1199			evbmips
1200			evbppc(marvell)
1201			evbppc(ibm4xx)
1202			evbsh3
1203			hp700
1204			hpcmips
1205			hpcsh
1206			ia64
1207			ibmnws
1208			iyonix
1209			landisk
1210			luna68k
1211			mac68k
1212			mmeye
1213			mvme68k
1214			mvmeppc
1215			mipsco
1216			netwinder
1217			newsmips
1218			next68k
1219			ofppc
1220			pc532
1221			pmax
1222			pmppc
1223			prep
1224			sandpoint
1225			sbmips
1226			shark
1227			sparc
1228			sparc64
1229			vax
1230			x68k
1231			zaurus
1232
1233		not tested:
1234			pdp10 (i don't know how to build)
1235			sh5 (not buildable with an unrelated problem.)
1236
1237    compile  CAYMAN64/netbsd32_sa.o
1238    cc1: warnings being treated as errors
1239    /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c: In function 'netbsd32_sa_ucsp':
1240    /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c:126: warning: implicit declaration of function '_UC_MACHINE32_SP'
1241    --- netbsd32_sa.o ---
1242    *** [netbsd32_sa.o] Error code 1
1243    1 error
1244
1245		notyet:
1246			amigappc
1247			playstation2
1248
1249Branch:		yamt-vop
1250Description:	remove several VOPs
1251Status:		Terminated; merged to -current
1252Start Date:	Wed Oct 19 2005
1253End Date:	Wed Nov  2 2005
1254Base Tag:	yamt-vop-base3
1255Maintainer:	YAMAMOTO Takashi <yamt@NetBSD.org>
1256Scope:		src/sys
1257Notes:		http://mail-index.NetBSD.org/tech-kern/2005/09/27/0000.html
1258
1259Branch:		gdamore-uart
1260Description:	Add register table support to com driver.
1261Status:		Active
1262Start Date:	14 June 2006
1263End Date:	13 July 2006
1264Base Tag:	gdamore-uart-base
1265Maintainer:	Garrett D'Amore <gdamore@NetBSD.org>
1266Scope:		kernel
1267Notes:		Results in consolidation of Alchemy (mips/dev/alchemy/aucom.c)
1268		com support, and also removes a nasty hack from Atheros com.
1269
1270########################################################################
1271# Other:
1272########################################################################
1273
1274Branch:		magnum
1275Description:	?
1276Status:		?
1277Start Date:
1278End Date:
1279Base Tag:	magnum-base
1280Maintainer:	?
1281Scope:		kernel
1282Notes:
1283
1284