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