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