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