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