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