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