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