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