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