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