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