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