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