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