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