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