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