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