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