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