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