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