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