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