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