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