Annotation of src/doc/BRANCHES, Revision 1.260
1.260 ! simonb 1: # $NetBSD: BRANCHES,v 1.259 2008/06/18 17:08:40 simonb Exp $
1.1 lukem 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.
1.79 briggs 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: #
1.1 lukem 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: ?
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
1.10 salo 64: Maintainer: Release Engineering <releng@NetBSD.org>
1.1 lukem 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
1.10 salo 76: Maintainer: Release Engineering <releng@NetBSD.org>
1.1 lukem 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
1.10 salo 87: Maintainer: Release Engineering <releng@NetBSD.org>
1.1 lukem 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
1.10 salo 98: Maintainer: Release Engineering <releng@NetBSD.org>
1.1 lukem 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
1.10 salo 109: Maintainer: Release Engineering <releng@NetBSD.org>
1.1 lukem 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
1.13 jmc 116: Status: Terminated
1.1 lukem 117: Start Date: 1 Apr 2000
118: End Date:
119: Base Tag: netbsd-1-4-base
1.10 salo 120: Maintainer: 1.4 Release Engineering <releng-1-4@NetBSD.org>
1.1 lukem 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
1.37 jmc 127: Status: Terminated
1.1 lukem 128: Start Date: 20 Jun 2000
1.37 jmc 129: End Date: 26 Jan 2005
1.1 lukem 130: Base Tag: netbsd-1-5-base
1.10 salo 131: Maintainer: 1.5 Release Engineering <releng-1-5@NetBSD.org>
1.1 lukem 132: Scope: Entire tree.
133: Notes:
134: Commits restricted to release engineering.
1.6 lukem 135:
136: Branch: netbsd-1-6
137: Description: The NetBSD 1.6 release branch
1.91 wiz 138: Status: Terminated
1.7 lukem 139: Start Date: 22 May 2002
1.6 lukem 140: End Date:
141: Base Tag: netbsd-1-6-base
1.10 salo 142: Maintainer: 1.6 Release Engineering <releng-1-6@NetBSD.org>
1.6 lukem 143: Scope: Entire tree.
144: Notes:
145: Commits restricted to Release Engineering.
1.1 lukem 146:
1.88 riz 147: Branch: netbsd-2
148: Description: The NetBSD 2 release branch
149: Status: Active
150: Start Date: 23 Dec 2004
151: End Date:
152: Base Tag: netbsd-2-base
153: Maintainer: 2 Release Engineering <releng-2@NetBSD.org>
154: Scope: Entire tree. (src + xsrc)
155: Notes:
156: Commits restricted to Release Engineering.
157:
1.13 jmc 158: Branch: netbsd-2-0
1.37 jmc 159: Description: Originally the NetBSD 2.0 release branch and now the branch
160: tracking security/critical fixes for the NetBSD 2.0 series
1.13 jmc 161: Status: Active
1.37 jmc 162: Start Date: 28 Mar 2004 and changed for security/critical function on
163: 23 Dec 2004
1.13 jmc 164: End Date:
165: Base Tag: netbsd-2-0-base
166: Maintainer: 2.0 Release Engineering <releng-2-0@NetBSD.org>
167: Scope: Entire tree. (src + xsrc)
1.37 jmc 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:
1.88 riz 173: Branch: netbsd-2-1
174: Description: Tracking security/critical fixes for NetBSD 2.1
1.37 jmc 175: Status: Active
1.88 riz 176: Start Date: 26 Oct 2005
1.37 jmc 177: End Date:
1.88 riz 178: Base Tag: netbsd-2-1-RELEASE
1.37 jmc 179: Maintainer: 2 Release Engineering <releng-2@NetBSD.org>
180: Scope: Entire tree. (src + xsrc)
1.88 riz 181: Notes: Branch contains only security/critical fixes to
182: NetBSD 2.1. For new features, use netbsd-2 branch.
1.13 jmc 183: Commits restricted to Release Engineering.
184:
1.36 jmc 185: Branch: netbsd-3
186: Description: The NetBSD 3 release branch
187: Status: Active
188: Start Date: 16 Mar 2005
189: End Date:
190: Base Tag: netbsd-3-base
1.37 jmc 191: Maintainer: 3 Release Engineering <releng-3@NetBSD.org>
1.36 jmc 192: Scope: Entire tree. (src + xsrc)
193: Notes:
194: Commits restricted to Release Engineering.
1.1 lukem 195:
1.88 riz 196: Branch: netbsd-4
197: Description: The NetBSD 4 release branch
1.51 riz 198: Status: Active
1.88 riz 199: Start Date: 8 Aug 2006
1.51 riz 200: End Date:
1.88 riz 201: Base Tag: netbsd-4-base
202: Maintainer: 4 Release Engineering <releng-4@NetBSD.org>
1.51 riz 203: Scope: Entire tree. (src + xsrc)
1.88 riz 204: Notes:
1.51 riz 205: Commits restricted to Release Engineering.
206:
1.79 briggs 207: ########################################################################
208: # Individual developers' branches (Active/Dormant):
209: ########################################################################
1.4 bjh21 210:
1.158 yamt 211: Branch: ad-audiomp
212: Description: Add MP locking to the audio drivers
213: Status: Active
1.225 wiz 214: Start Date: 28 February 2007
1.158 yamt 215: End Date:
216: Base Tag: ad-audiomp-base
217: Maintainer: Andrew Doran <ad@NetBSD.org>
218: Scope: kernel
219: Notes: Making the audio drivers MP safe is necessary before efforts
220: can be made to make the VM system MP safe. About 1/2 of the
221: drivers are converted, the remaining 1/2 need more changes.
222:
223: As of import this is snapshot of work in progress and so
224: may not compile; in particular the midi changes are very
225: much "in progress". The audio component has been tested
226: and verified to work with emuxki and auvia. There may
227: be a locking issue in the ac97 code at boot.
228:
229: The are two locks per device instance, an ISR lock and
230: a character device lock. The ISR lock replaces calls to
231: splaudio()/splx(), and will be held across calls to device
232: methods which were called at splaudio() before (e.g.
233: trigger_output). The character device lock is held across
234: calls to nearly all of the methods, excluding some only
1.225 wiz 235: used for initialization, e.g. get_locks. This needs to be
1.158 yamt 236: documented at merge time.
237:
238: To test on a multi way x86 system, search for "mpsafe" in
239: x86/x86/intr.c and change IPL_SCHED to IPL_AUDIO. Run a job
240: that will acquire the ISR lock (depends on the hardware, but
241: "while true; do mixerctl -a > /dev/null; done" may suffice).
242: Play audio, run lockstat and verify that that there is
243: contention on the ISR lock.
244:
1.4 bjh21 245: Branch: bjh21-hydra
246: Description: Simtec Hydra support and ARM SMP in general
1.90 bjh21 247: Status: Dormant
1.4 bjh21 248: Start Date: 18 Oct 2002
249: End Date:
250: Base Tag: bjh21-hydra-base
1.10 salo 251: Maintainer: Ben Harris <bjh21@NetBSD.org>
1.4 bjh21 252: Scope: sys/arch/arm sys/arch/acorn32
1.90 bjh21 253: Notes: This code was on a branch because it involves changes to
1.4 bjh21 254: cpuswitch.S which would otherwise make merging the
1.90 bjh21 255: nathanw_sa branch difficult.
1.1 lukem 256:
1.201 chris 257: Branch: chris-arm-intr-rework
258: Description: Rework arm interrupt handling code
259: Status: Active
260: Start Date: 11 Aug 2007
261: End Date:
262: Base Tag: chris-arm-intr-rework-base
1.225 wiz 263: Maintainer: Chris Gilbert <chris@NetBSD.org>
1.201 chris 264: Scope: sys/arch/arm sys/arch/cats (other arm archs to follow)
265: Notes: Rework arm interrupt code to provide a shared set of interrupt
266: routines, and allow improvements to be shared across all arm
267: based hardware.
268:
1.229 cube 269: Branch: cube-autoconf
270: Description: Renovate autoconf(9) API
271: Status: Active
272: Start Date: 11 Dec 2007
273: End Date:
274: Base Tag: cube-autoconf-base
275: Maintainer: Quentin Garnier <cube@NetBSD.org>
276: Scope: kernel usr.bin/config (and some other userland bits)
277: Notes: Address a number of issues the current autoconf(9) API has.
278:
1.79 briggs 279: Branch: gmcgarry_ctxsw
280: Description: Separate scheduler from context-switch code
281: Status: Dormant
282: Start Date: 18 December 2002
283: End Date:
284: Base Tag: gmcgarry_ctxsw_base
285: Maintainer: Gregory McGarry <gmcgarry@NetBSD.org>
286: Scope: kernel
1.225 wiz 287: Notes: Removing knowledge of the scheduler and its run queues
1.79 briggs 288: from the machine-dependent context switch code is the
289: first step in cleaning up the scheduler. It is necessary
290: for the newlock branch, making the scheduler SMP friendly,
291: adding real-time scheduler extensions, and reducing the
292: number of code paths for LWP and proc switching.
293:
294: Branch: gmcgarry_ucred
295: Description: Integrate and encapsulate user credentials
296: Status: Dormant
297: Start Date: 18 December 2002
298: End Date:
299: Base Tag: gmcgarry_ucred_base
300: Maintainer: Gregory McGarry <gmcgarry@NetBSD.org>
301: Scope: kernel
302: Notes: merge pcred and ucred and poolify
303:
1.199 rjs 304: Branch: hpcarm-cleanup
305: Description: Fix build problems for hpcarm
306: Status: Active
307: Start Date: 31 July 2007
308: End Date:
309: Base Tag: hpcarm-cleanup-base
310: Maintainer: Robert Swindells <rjs@NetBSD.org>
311: Scope: kernel
312: Notes: Modify SA11x0 interrupt code to match PXA2x0 equivalent.
313:
1.194 itohy 314: Branch: itohy-usb1
315: Description: USB stack overhaul, mostly DMA related
316: Status: Active
317: Start Date: 22 May 2007
318: End Date:
319: Base Tag: itohy-usb1-base
320: Maintainer: ITOH Yasufumi <itohy@NetBSD.org>
321: Scope: kernel
322: Notes: To check out the kernel source tree,
323: 1. check out checkout script
324: cvs checkout -ritohy-usb1 src/sys/dev/usb/filelist
325: 2. update files in the branch
326: sh -e src/sys/dev/usb/filelist
327:
1.79 briggs 328: Branch: kame
329: Description: KAME Project
330: Status: Dormant
331: Start Date: 28 Jun 1999
332: End Date:
333: Base Tag:
334: Maintainer: Jun-ichiro itojun Hagino <itojun@NetBSD.org>
335: Scope: kernel
336: Notes: http://www.kame.net
337: Used for "reference" purposes for early part of KAME
338: integration effort. The branch is not actively used, as I
339: (itojun) use patch(1) and diff(1) for the KAME syncs.
340:
1.240 keiichi 341: Branch: keiichi-mipv6
342: Description: Developing Mobile IPv6 function
343: Status: Active
344: Start Date: 21 Feb 2008
345: End Date:
346: Base Tag: keiichi-mipv6-base
347: Maintainer: Keiichi Shima <keiichi@netbsd.org>
348: Scope: sys, sbin, libc/net, distrib/sets, share/man/
349: Notes: http://www.mobileip.jp/
350: Work on developing Mobile IPv6/NEMO BS functions and
351: related MIPv6 based advanced functions on NetBSD.
352: Please consult keiichi for joining this activity.
353:
1.79 briggs 354: Branch: kent-audio2
355: Description: In-kernel audio mixer
356: Status: Active
357: Start Date: Sun Jan 16 2005
358: End Date:
359: Base Tag: kent-audio2-base
360: Maintainer: TAMURA Kent <kent@NetBSD.org>
361: Scope: kernel (audio device drivers)
362: Notes: http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html
363: Please consult with the maintainer before committing
364: to this branch.
365: This branch is not expected to be compilable yet.
366:
367: Branch: matt-timespec
368: Description: Convert the kernel to struct timespec as its primary time
369: storage mechanism.
1.197 matt 370: Status: Inactive
1.79 briggs 371: Start Date: 2005-02-19
372: End Date:
373: Base Tag:
374: Maintainer: Matt Thomas <matt@NetBSD.org>
375: Scope: kernel
376: Notes:
377:
1.197 matt 378: Branch: matt-mips64
379: Description: Rototill the mips code to support LP64 mips and N32/N64 ABIs
380: Status: Active
381: Start Date: 2007-07-17
382: End Date:
1.206 matt 383: Base Tag: matt-mips64-base
384: Maintainer: Matt Thomas <matt@NetBSD.org>
385: Scope: kernel & userland
386: Notes:
387:
388: Branch: matt-armv6
389: Description: Rototill the arm code to support features present in the
1.225 wiz 390: v6 of the ARM Architecture. Additionally, clean up things
1.206 matt 391: along the way to use common practices.
392: Status: Active
393: Start Date: 2007-08-27
394: End Date:
395: Base Tag: matt-armv6-base
1.197 matt 396: Maintainer: Matt Thomas <matt@NetBSD.org>
397: Scope: kernel & userland
398: Notes:
399:
1.242 mjf 400: Branch: mjf-devfs2
1.225 wiz 401: Description: device file system supporting dynamic device nodes
1.224 mjf 402: Status: Active
1.242 mjf 403: Start Date: 21 February 2008
1.224 mjf 404: End Date:
1.242 mjf 405: Base Tag: mjf-devfs2-base
1.224 mjf 406: Maintainer: Matt Fleming <mjf@NetBSD.org>
407: Scope: kernel and userland
408: Notes: This branch will move away from the static device nodes that
409: are created with MAKEDEV scripts and allow nodes to be created
410: and removed dynamically as devices are attached and detached
411: from the machine.
412:
413: Branch: mjf-ufs-trans
1.225 wiz 414: Description: file system transactions for ufs
1.224 mjf 415: Status: Active
416: Start Date: 12 March 2007
417: End Date:
418: Base Tag: mjf-ufs-trans-base
419: Maintainer: Matt Fleming <mjf@NetBSD.org>
420: Scope: kernel
421: Notes:
422:
1.241 skrll 423: Branch: nick-net80211-sync
424: Description: sync of net80211 with FreeBSD
425: Status: Active
426: Start Date: 21 February 2008
427: End Date:
428: Base Tag: nick-net80211-base
429: Maintainer: Nick Hudson <skrll@NetBSD.org>
430: Scope: sys/
431: Notes: Sync'ing net80211 with FreeBSD and drivers update. The branch is
432: currently only the kernel, but will likely extend to some userland
433: areas.
434:
1.79 briggs 435: Branch: pkgviews
436: Description: package views, enabling multiple conflicting packages to co-exist
437: Status: Active
438: Start Date: 22 July 2002
439: End Date:
440: Base Tag: pkgviews
441: Maintainer: Alistair Crooks <agc@NetBSD.org>
442: Scope: pkgsrc, basesrc/usr.sbin/pkg_install
443: Notes: A more flexible infrastructure for third-party packages by
444: allowing multiple conflicting packages and versions to co-exist
445: within the same tree
446:
447: Branch: rpaulo-netinet-merge-pcb
448: Description: merge in6pcb with inpcb
1.133 rpaulo 449: Status: Dormant
1.79 briggs 450: Start Date: Wed Feb 01 2006
451: End Date:
452: Base Tag: rpaulo-netinet-merge-pcb-base
453: Maintainer: Rui Paulo <rpaulo@NetBSD.org>
454: Scope: src/sys
1.135 rpaulo 455: Notes: No longer active due to the lack of time. If you plan to
456: continue this branch, sys/netinet/in_pcb.h already contains
457: the proposed structure layout (which was roughly discussed
458: in the tech-net mailing list).
459: I also defined INP_*() macros to mimicate FreeBSD's inpcb
460: locking style, but currently they do nothing and are not
461: yet called at the correct places (needs discussion about
462: kernel fine-grained locking).
463: To continue this branch, one needs to read all the relevant
464: inpcb/in6pcb source files and change the function names,
1.225 wiz 465: structure names, structure fields according to the new
1.135 rpaulo 466: layout (in6pcb is gone).
467: Don't try to build a kernel from this branch because it won't
468: work. The missing pieces required to do a complete build
469: were not committed because they were incomplete and generated
470: panics.
471: You shouldn't need to worry about KAME syncs because
472: they did most of them by now.
473: After the work is done, you are required to test the branch
474: (before the merge to -current) with an interop IPv6 test.
475: More info at: http://www.tahi.org/
1.79 briggs 476:
477: Branch: rtr-xorg-branch
478: Description: xorg & static build alterations to src/x11
479: Status: Active
480: Start Date: Nov 15 2004
481: End Date:
482: Base tag: rtr-xorg-branch-base
483: Maintainer: Tyler R. Retzlaff <rtr@NetBSD.org>
484: Scope: x11
485: distrib/sets/lists
486: share/mk/bsd.x11.mk
487: share/mk/bsd.own.mk
488: etc/mtree/NetBSD.dist
489: Notes: Requires parts of xsrc/xfree (HEAD)
490: xsrc/local, xsrc/xfree/xc/programs/Xserver/hw/netbsd
491: Requires xorg (XORG-6_8_1)
492:
1.191 wrstuden 493: Branch: wrstuden-fixsa
494: Description: Fix a number of issues present with Scheduler Activations.
495: Status: Active
496: Start Date: 15 May 2007
497: End Date:
498: Base Tag: wrstuden-fixsa-base
499: Maintainer: Bill Stouder-Studenmund <wrstuden@NetBSD.org>
500: Scope: src, though all the interesting stuff is in the kernel
501: or lib/libpthread or maybe gdb.
502: Notes: This branch is based off of the netbsd-4 branch!
503: This branch is intended to stage improvements for the
504: Scheduler Activations system for NetBSD 4. Improvements
505: include not allocating memory while preparing to tsleep(),
506: reducing inappropriate upcall delivery (hopefully also
507: eliminating the need to mlock stacks), and being
1.253 wrstuden 508: able to pthread_kill() running threads. At this date,
509: most goals have been achieved. This branch also includes
510: fixes to gdb to support working with threaded apps.
511:
512: Branch: wrstuden-revivesa
513: Description: Fix a number of issues present with Scheduler Activations.
514: Status: Active
515: Start Date: 10 May 2008
516: End Date:
517: Base Tag: wrstuden-revivesa-base
518: Maintainer: Bill Stouder-Studenmund <wrstuden@NetBSD.org>
519: Scope: src, though all the interesting stuff is in the kernel
520: Notes: This branch is intended to revive Scheduler Activations
521: in -current in the 5.0 era. This branch's main goal is
522: to re-add syscall compatability so that SA-based libpthread
523: programs can run with a -current kernel. 1:1 threading will
524: remain the NetBSD-default. This branch will re-add necessary
525: upcall support, and will also serve as a chance to clean
526: out cruft that had accumulated in the implementation over
527: time.
1.191 wrstuden 528:
1.227 yamt 529: Branch: yamt-kmem
530: Description:
531: - separate kernel va allocation from kernel fault handling.
532: - make kmem_alloc interrupt-safe.
533: Status: Active
534: Start Date: Sun Dec 9 2007
535: End Date:
1.231 yamt 536: Base Tag: yamt-kmem-base3
1.227 yamt 537: Maintainer: YAMAMOTO Takashi <yamt@NetBSD.org>
538: Scope: src/sys (src/common is tagged but not branched)
539: Notes:
1.234 yamt 540: todo:
541: - investigate if PMAP_PREFER equivalent can be done
542: with vmem_xalloc. find a tester with hardware for it.
543: - g/c replaced code, including kmapent and malloc.
544: - consider to remove other submaps. eg. mb_map
1.227 yamt 545:
1.250 yamt 546: Branch: yamt-nfs-mp
547: Description: make nfs client mp-safe
548: Status: Active
549: Start Date: Sun Apr 27 2008
550: End Date:
1.251 yamt 551: Base Tag: yamt-nfs-mp-base2
1.250 yamt 552: Maintainer: YAMAMOTO Takashi <yamt@NetBSD.org>
553: Scope: src/sys (src/common is tagged but not branched)
554: Notes:
555:
1.249 yamt 556: Branch: yamt-pf42
557: Description: import newer pf from OpenBSD 4.2
558: Status: Active
559: Start Date: Sat Apr 19 2008
560: End Date:
1.257 yamt 561: Base Tag: yamt-pf42-base4
1.249 yamt 562: Maintainer: Peter Postma <peter@NetBSD.org>,
563: YAMAMOTO Takashi <yamt@NetBSD.org>
564: Scope: src
565: Notes: see sys/dist/pf/net/TODO
566:
1.163 reinoud 567: Branch: reinoud-bufcleanup
1.164 reinoud 568: Description: implement and evaluate struct buf usage cleanup strategies.
569: Ideas currently in mind (preference for b):
570: a)
1.163 reinoud 571: 1. use of bio_ops per buffer.
572: 2. allow chaining/overloading of functions in bio_ops
573: and provide some private context.
1.225 wiz 574: 3. extend the bio_ops with commonly used functionality
1.163 reinoud 575: like pending action counting, custom context passing,
576: last minute processing of buffer data, buffer cache
577: etc.
578: 4. investigate the use of the kcont()
579: continuation-passing framework for async io
580: completion notification for bufs
1.164 reinoud 581: ...
582: b)
583: 1. all sequencing use of B_CALL replaced by
584: device-threads, if possible generic code around BUFQ
1.225 wiz 585: 2. possibly use kcont() for async IO finished signaling
1.164 reinoud 586: 3. counter of pending and queued actions requestable
587: by IOCTL interface?
588: 4. implement `last minute buffer fixup' calls and maybe
589: even finished I/O calls as vnode operations
590: ...
1.163 reinoud 591: Status: Active
592: Start Date: Thu Mar 15 2007
593: End Date:
594: Base Tag: reinoud-bufcleanup-base
595: Maintainer: Reinoud Zandijk <reinoud@NetBSD.org>
596: Scope: src/sys and src/common
1.225 wiz 597: Notes: Used as experiment sandbox and if successful hopefully one day
598: to be integrated.
1.163 reinoud 599:
1.255 simonb 600: Branch: simonb-wapbl
601: Description: Wasabi's journaling filesystem support
602: Status: Active
603: Start Date: Tue Jun 10 2008
604: End Date:
605: Base Tag: simonb-wapbl-base
606: Maintainer: Simon Burge <simonb@NetBSD.org>
1.258 simonb 607: Scope: src/distrib/sets/lists/comp src/distrib/utils/sysinst
608: src/include
609: src/sbin/fsck_ffs src/sbin/fsdb src/sbin/mount_ffs
610: src/sys
1.255 simonb 611: Notes: Still has a number of issues:
612: - Can't log the root filesystem (or any FS if /dev isn't an
1.256 simonb 613: ffs) or update existing mounts from non-logged to logged.
614: See kern/38057 - a fix for the PR has been committed but
615: at this stage it doesn't play well with WAPBL.
1.255 simonb 616: - Log must currently live at end of partition.
617: - No log locators.
618: - Some heavy workload performance issues on SMP machines.
619: - Some stability issues on SMP machines.
620:
1.175 thorpej 621: Branch: thorpej-atomic
622: Description: Implementation of an atomic memory operations API modeled
623: after the one in Solaris 10.
624: Status: Active
625: Start Date: Apr 11 2007
626: End Date:
627: Base tag: thorpej-atomic-base
628: Maintainer: Jason Thorpe <thorpej@netbsd.org>
629: Scope: src/common
630: src/sys
1.176 thorpej 631: Notes: Base atomic primitives need to be implemented for
632: all of the supported architectures:
633:
1.179 thorpej 634: alpha DONE
1.180 thorpej 635: arm DONE
1.176 thorpej 636: hppa
1.179 thorpej 637: i386 DONE
1.176 thorpej 638: ia64
1.182 thorpej 639: m68k DONE (except for 68010)
1.176 thorpej 640: mips
641: ns32k
1.184 thorpej 642: powerpc DONE except for membar_*()
1.185 thorpej 643: powerpc64 DONE except for membar_*()
1.176 thorpej 644: sh3
1.185 thorpej 645: sparc DONE except for membar_*()
646: sparc64 DONE except for membar_*()
1.176 thorpej 647: vax
1.179 thorpej 648: x86_64 DONE
649:
650: Tested:
651:
652: alpha NO
653: arm NO
654: hppa NO
655: i386 NO
656: ia64 NO
657: m68k NO
658: mips NO
659: ns32k NO
660: powerpc NO
661: powerpc64 NO
662: sh3 NO
663: sparc NO
664: sparc64 NO
665: vax NO
666: x86_64 NO
667:
668: TODO:
669:
670: all - Need to replace mb_*() with membar_*().
1.180 thorpej 671:
1.184 thorpej 672: - Audit MUTEX_CAS() and RWLOCK_CAS() uses
673: to see of membar_enter() is required here.
674:
1.185 thorpej 675: - Talk to ad@ -- figure out of non-atomic
676: mutex / rwlock release is actually safe.
677:
1.180 thorpej 678: arm - Consider using a RAS technique like
679: MIPS uses for _lock_cas() and the mutex
680: stubs. Possibly do more than one atomic
681: op as a RAS. Possibly implement mutex
682: stubs using the technique.
1.182 thorpej 683:
684: m68k - Need to do 68010 support.
1.179 thorpej 685:
686: i386 - Need to change when x86_patch() is called
687: so we can test ncpus.
688:
1.184 thorpej 689: powerpc - Figure out if we need barriers in the
690: atomic ops themselves (hopefully not!)
691:
1.179 thorpej 692: x86_64 - Need to change when x86_patch() is called
693: so we can test ncpus.
1.79 briggs 694:
695: ########################################################################
696: # Individual developers' branches (Terminated):
697: ########################################################################
698:
1.1 lukem 699: Branch: bouyer-scsipi
700: Description: Integration of atapi support
701: Status: Terminated
702: Start Date:
703: End Date:
704: Base Tag:
1.10 salo 705: Maintainer: Manuel Bouyer <bouyer@NetBSD.org>
1.1 lukem 706: Scope: kernel
707: Notes: Superseded by thorpej_scsipi
708:
1.79 briggs 709: Branch: bouyer-xen2
710: Description: update xen port to xen 2.0, with support for domain0 operations
711: Status: Terminated
712: Start Date: Dec 13 2004
713: End Date: Mar 10 2005
714: Base Tag: netbsd-2-base
715: Maintainer: Manuel Bouyer <bouyer@NetBSD.org>
716: Scope: src/sys/arch/xen
717: Notes:
718:
1.220 bouyer 719: Branch: bouyer-xenamd64
720: Description: add amd64 support to Xen and rework some parts to share more code between Xen and others
721: Status: Terminated
722: Start Date: 18 Oct 2007
723: End Date: 22 Nov 2007
724: Base Tag: bouyer-xenamd64-base
725: Maintainer: Manuel Bouyer <bouyer@NetBSD.org>
726: Scope: kernel
727: Notes:
728:
1.238 bouyer 729: Branch: bouyer-xeni386
730: Description: switch xen on i386 to the x86 pmap and the xen/x86/x86_xpmap.c bootstrap, and add i386 PAE support
1.243 yamt 731: Status: Terminated
1.238 bouyer 732: Start Date: 10 Dec 2007
733: End Date: 23 Jan 2008
734: Base Tag: bouyer-xeni386-base
735: Maintainer: Manuel Bouyer <bouyer@NetBSD.org>
736: Scope: kernel
737: Notes:
738:
1.87 chap 739: Branch: chap-midi
740: Description: Renovation of MIDI support
741: Status: Terminated; merged to -current
742: Start Date: 19 May 2006
743: End Date: 30 Jun 2006
744: Base Tag: chap-midi-base
745: Maintainer: Chapman Flack <chap@NetBSD.org>
746: Scope: sys, share/man, usr.bin
747: Notes:
748:
1.1 lukem 749: Branch: chs-ubc
1.44 chs 750: Description: Unified Buffer Cache
751: Status: Terminated
1.1 lukem 752: Start Date:
753: End Date:
754: Base Tag: chs-ubc-base
1.10 salo 755: Maintainer: Chuck Silvers <chs@NetBSD.org>
1.1 lukem 756: Scope: kernel
757: Notes:
758:
759: Branch: chs-ubc2
1.44 chs 760: Description: Unified Buffer Cache
761: Status: Terminated; merged to -current
1.1 lukem 762: Start Date:
763: End Date:
764: Base Tag: chs-ubc2-base, chs-ubc2-newbase
1.10 salo 765: Maintainer: Chuck Silvers <chs@NetBSD.org>
1.1 lukem 766: Scope: kernel
767: Notes:
768:
769: Branch: cjs-build-against-obj-dir
770: Description: ?
771: Status: ?
772: Start Date:
773: End Date:
774: Base Tag:
1.10 salo 775: Maintainer: Curt Sampson <cjs@NetBSD.org>
1.1 lukem 776: Scope: Entire tree.
777: Notes:
778:
779: Branch: eeh-paddr_t
1.44 chs 780: Description: use separate types for virtual vs. physical addresses
781: Status: Terminated; merged to -current
1.1 lukem 782: Start Date:
783: End Date:
784: Base Tag: eeh-paddr_t-base
1.10 salo 785: Maintainer: Eduardo Horvath <eeh@NetBSD.org>
1.1 lukem 786: Scope: kernel
1.44 chs 787: Notes: This is needed to support 32-bit kernels on sparc64.
1.1 lukem 788:
1.79 briggs 789: Branch: elad-kernelauth
790: Description: Native NetBSD implementation of Apple's kernel authorization
791: based on TN2127. This is a "clean-room" implementation to
792: avoid any licensing issues.
793: Status: Terminated; merged to -current
794: Start Date: Tue Mar 7 2006
795: End Date: Mon May 15 2006
796: Base Tag: elad-kernelauth-base
797: Maintainer: Elad Efrat <elad@NetBSD.org>
798: Scope: src/sys, src/share/man/man9/Makefile,
799: src/share/man/man9/kauth.h, src/distrib/sets/lists/comp/mi
800: Notes:
801:
1.1 lukem 802: Branch: fvdl-softdep
803: Description: FFS soft dependencies
1.44 chs 804: Status: Terminated; merged to -current
1.1 lukem 805: Start Date:
806: End Date:
807: Base Tag: fvdl-softdep-base
1.10 salo 808: Maintainer: Frank van der Linden <fvdl@NetBSD.org>
1.1 lukem 809: Scope: kernel
810: Notes:
811:
812: Branch: gehenna-devsw
813: Description: auto-generation of devsw table
814: Status: Terminated
815: Start Date: 16 May 2002
816: End Date: 6 Sep 2002
817: Base Tag: gehenna-devsw-base
1.10 salo 818: Maintainer: MAEKAWA Masahide <gehenna@NetBSD.org>
1.1 lukem 819: Scope: syssrc
820: Notes: The goal is to get rid of the existing device switch tables in
821: port-dependent conf.c and to generate them dynamically by
822: config(8).
1.8 gmcgarry 823:
1.1 lukem 824: Branch: is-newarp
1.23 is 825: Description: ARP for non-Ethernet
826: Status: Terminated; merged before NetBSD 1.3
827: Start Date: 1996/10/13
828: End Date: 1997/03/15
1.1 lukem 829: Base Tag: is-newarp-base
1.10 salo 830: Maintainer: Ignatios Souvatzis <is@NetBSD.org>
1.1 lukem 831: Scope: kernel
832: Notes:
833:
1.226 jmcneill 834: Branch: jmcneill-pm
835: Description: Power management framework overhaul, ACPI improvements
836: Status: Terminated; merged before NetBSD 5.0
837: Start Date: 3 Aug 2007
838: End Date: 9 Dec 2007
839: Base Tag: jmcneill-pm-base
840: Maintainer: Jared D. McNeill <jmcneill@NetBSD.org>
841: Scope: kernel
842: Notes:
843:
1.1 lukem 844: Branch: kenh-if-detach
845: Description: Interface detach support.
846: Status: ?
847: Start Date:
848: End Date:
849: Base Tag: kenh-if-detach-base
1.10 salo 850: Maintainer: Ken Hornstein <kenh@NetBSD.org>
1.1 lukem 851: Scope: kernel
852: Notes:
853:
1.16 kent 854: Branch: kent-audio1
855: Description: Audio converter pipeline
1.18 kent 856: Status: Terminated; merged to -current
1.16 kent 857: Start Date: Tue Dec 7 2004
1.17 kent 858: End Date: Tue Jan 11 2005
859: Base Tag: kent-audio1-base
860: Maintainer: TAMURA Kent <kent@NetBSD.org>
861: Scope: kernel (audio device drivers)
862: Notes: http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html
863: Please consult with the maintainer before committing
864: to this branch.
865:
1.1 lukem 866: Branch: kqueue
867: Description: kqueue kernel event notification mechanism (from FreeBSD)
1.5 jdolecek 868: Status: Terminated; merged to -current
1.1 lukem 869: Start Date: Tue Jul 10 23:08:38 EST 2001
1.5 jdolecek 870: End Date: Tue Oct 24 09:14:14 GMT 2002
1.1 lukem 871: Base Tag: kqueue-base
872: Maintainer: Jaromir Dolecek <jdolecek@NetBSD.org>
873: Scope: kernel, libc/sys, share/man/man9, usr.bin/fstat
874: Notes: Integration of FreeBSD's kqueue(2) mechanism, with various
875: local internal changes to better suit NetBSD, and
876: enhancements such as looking up filters by name or
877: number, and dynamic registration of "user" filters.
878: The work is complete as is, but is awaiting more
879: feedback from various kernel gurus before going mainline.
1.11 skrll 880:
881: Branch: ktrace-lwp
882: Description: ktrace support for lwp ids.
1.59 skrll 883: Status: Terminated; merged to -current
1.11 skrll 884: Start Date: Wed Jul 2 15:27:30 UTC 2003
1.59 skrll 885: End Date: Sun Dec 11 12:25:29 UTC 2005
1.11 skrll 886: Base Tag: ktrace-lwp-base
1.12 grant 887: Maintainer: Darren Reed <darrenr@NetBSD.org>
1.11 skrll 888: Scope: sys
889: Notes:
1.1 lukem 890:
891: Branch: marc-pcmcia
892: Description: PCMCIA support
893: Status: Terminated; merged to -current
894: Start Date:
895: End Date:
896: Base Tag: marc-pcmcia-base, marc-pcmcia-bp
1.10 salo 897: Maintainer: Marc Horowitz <marc@NetBSD.org>
1.1 lukem 898: Scope: kernel
899: Notes:
900:
901: Branch: minoura_x68k_bus_h
902: Description: bus_space(9) and bus_dma(9) implementation for x68k
903: Status: Terminated; merged to -current
904: Start Date: 23 Dec 1998
905: End Date: 16 Mar 1999
906: Base Tag: minoura_x68k_bus_h-base
1.10 salo 907: Maintainer: Minoura Makoto <minoura@NetBSD.org>
1.1 lukem 908: Scope: sys/arch/x68k
909: Notes:
910:
911: Branch: minoura-xpg4dl
912: Description: Citrus Project locale subsystem
913: Status: Terminated; (partly) merged to -current
914: Start Date: 28 March 2000
915: End Date:
916: Base Tag: minoura-xpg4dl-base
1.10 salo 917: Maintainer: Minoura Makoto <minoura@NetBSD.org>
1.1 lukem 918: Scope: basesrc, syssrc, sharesrc
919: Notes: Citrus Project is developing dynamically-loadable, codeset-
920: independent locale subsystem. Part of the implementation
921: (LC_CTYPE) called XPG4DL is now integrated to -current.
922:
1.242 mjf 923: Branch: mjf-devfs
924: Description: device file system supporting dynamic device nodes
925: Status: Terminated
926: Start Date: 12 November 2007
927: End Date: 21 February 2008
928: Base Tag: mjf-devfs-base
929: Maintainer: Matt Fleming <mjf@NetBSD.org>
930: Scope: kernel and userland
931: Notes: This branch will move away from the static device nodes that
932: are created with MAKEDEV scripts and allow nodes to be created
933: and removed dynamically as devices are attached and detached
934: from the machine.
935:
1.1 lukem 936: Branch: mrg-vm-swap
1.49 mrg 937: Description: dynamic swap allocation, swap-to-files support
1.225 wiz 938: Status: Terminated; abandoned for mrg-vm-swap2
1.49 mrg 939: Start Date: 12 February 1997
940: End Date: 15 March 1997
941: Base Tag: [none]
942: Maintainer: Matthew R. Green <mrg@NetBSD.org>
943: Scope: kernel
944: Notes:
945:
946: Branch: mrg-vm-swap2
947: Description: dynamic swap allocation, swap-to-files support
948: Status: Terminated; merged to -current
949: Start Date: 4 May 1997
950: End Date: 12 June 1997
951: Base Tag: mrg-vm-swap2-base
1.10 salo 952: Maintainer: Matthew R. Green <mrg@NetBSD.org>
1.1 lukem 953: Scope: kernel
954: Notes:
955:
956: Branch: nathanw_sa
957: Description: Scheduler activations
1.44 chs 958: Status: Terminated; merged to -current
1.1 lukem 959: Start Date: 5 March 2001
1.9 thorpej 960: End Date: 18 January 2003
1.1 lukem 961: Base Tag: nathanw_sa_base
1.10 salo 962: Maintainer: Nathan Williams <nathanw@NetBSD.org>
1.1 lukem 963: Scope: kernel, libc, libkvm, libpthread, libpthread_dbg, include,
964: bin/ps usr.bin/systat usr.bin/top usr.bin/w
965: gnu/dist/toolchain/gdb gnu/usr.bin/gdb
966: Notes: The idea of scheduler activations is described in the
967: classic paper by Anderson et al., in ACM Transactions
968: a on Computer Systems volume 10 issue 1 (1992),which
969: can be found at
970: http://www.acm.org/pubs/citations/journals/tocs/1992-10-1/p53-anderson/
971: Many ideas in the implementation are based on the
972: implementation of scheduler activations added to Mach
973: 3.0 and described by Davis et al. in the University of
974: Washington CS tech report 92-08-93, which can be found
975: at
976: ftp://ftp.cs.washington.edu/tr/1992/08/UW-CSE-92-08-03.PS.Z
977:
978: My USENIX paper on the subject can be found at
979: http://web.mit.edu/nathanw/www/usenix/
980:
981: Please consult with the maintainer before committing
982: to this branch.
983: Other tags starting with nathanw_sa reserved for
984: branch management and are not guaranteed to be stable.
1.9 thorpej 985:
986: Trunk tagged with "nathanw_sa_before_merge" prior to
987: merging branch down to trunk. Branch tagged with
988: "nathanw_sa_end" to indicate the ending revision of
989: the branch.
1.1 lukem 990:
1.217 joerg 991: Branch: newlock
992: Description: New locking primitives, based on Solaris's
993: Status: Terminated
994: Start Date: March 9, 2002
1.225 wiz 995: End Date: February 12, 2007
1.217 joerg 996: Base Tag: newlock-base
997: Maintainer: Jason R. Thorpe <thorpej@NetBSD.org>
998: Scope: Kernel
999: Notes: The goal is to replace the existing lockmgr() and
1000: simple_lock() based locking mechanisms with the
1001: primitives found in Solaris: mutexes and rwlocks.
1.225 wiz 1002: Superseded by the newlock2 branch.
1.217 joerg 1003:
1004: Branch: newlock2
1005: Description: New locking primitives, based on Solaris's
1006: Status: Terminated
1007: Start Date: September 9, 2006
1.225 wiz 1008: End Date: February 12, 2007
1.217 joerg 1009: Base Tag: newlock2-base
1010: Maintainer: Andrew Doran <ad@NetBSD.org>
1011: Scope: Kernel
1012: Notes: As per the newlock branch, however given the amount of time
1013: the original branch has lain dormant, a new one has been
1014: created. Goals:
1015: - Implement new locking primitives on most-used ports.
1016: - Minor locking improvements.
1017: - Remove spinlockmgr().
1018:
1019: Branch: nick-csl-alignment
1020: Description: Provide correctly aligned __cpu_simple_lock_t for hppa
1021: Status: Terminated
1022: Start Date: 2007-07-18
1023: End Date:
1024: Base Tag: nick-csl-alignment-base5
1025: Maintainer: Nick Hudson <skrll@NetBSD.org>
1026: Scope: sys, lib/libpthread, lib/libpthread_dbg
1027: Notes:
1028:
1.1 lukem 1029: Branch: perseant-lfsv2
1030: Description: LFS incompatible on-disk data structure changes
1031: Status: Terminated
1032: Start Date: 27 June 2001
1033: End Date: 16 July 2001
1034: Base Tag: perseant-lfsv2-base
1.10 salo 1035: Maintainer: Konrad Schroder <perseant@NetBSD.org>
1.1 lukem 1036: Scope: basesrc/{sbin/*lfs,libexec/lfs_cleanerd,usr.sbin/dumplfs}, syssrc/sys/ufs
1037: Notes: This branch should be short-lived, I expect to merge as soon
1038: as the data structures required for unremove are in and tested.
1039:
1.217 joerg 1040: Branch: ppcoea-renovation
1041: Description: General renovation and cleanup of all OEA PowerPC ports.
1042: Status: Terminated; merged to -current
1043: Start Date: 30 April 2007
1044: End Date: 15 October 2007
1045: Base Tag: ppcoea-renovation-base
1046: Maintainer: Tim Rightnour <garbled@netbsd.org>
1047: Scope: src/sys/arch
1048: Notes: This branch is for a general cleanup of all OEA-based PowerPC
1049: ports. OEA (Operating Environment Architecture) PowerPC refers
1050: to the 601, 603, 604, and similar chips. Specifically, not the
1051: 403/401 and other embedded chips. The general concept is to get
1052: them all compiling, and sharing as much code as possible. All
1053: developers are welcome to commit to this branch.
1054:
1.174 thorpej 1055: Branch: thorpej-devvp
1056: Description: replace dev_t with struct vnode * in devsw entry points
1057: Status: Terminated
1058: Start Date: Sep 6 2001
1059: End Date: ???
1060: Base Tag: thorpej-devvp-base
1061: Maintainer: Jason Thorpe <thorpej@NetBSD.org>
1062: Scope: syssrc
1063: Notes: Kernels built from this branch are not expected
1064: to function correctly at this time.
1065:
1066: Ports known to compile on this branch:
1067: alpha
1068: i386
1069:
1.118 peter 1070: Branch: peter-altq
1071: Description: New ALTQ framework:
1072: - sync with KAME sources
1073: - share mtag/name mapping functions
1074: - separate altq + pf attachment
1075: Status: Terminated; merged to -current
1076: Start Date: March 16, 2006
1077: End Date: October 12, 2006
1078: Base Tag: peter-altq-base
1079: Maintainer: Peter Postma <peter@NetBSD.org>,
1080: Martin Husemann <martin@NetBSD.org>,
1081: Matthias Scheler <tron@NetBSD.org>
1082: Scope: dist/pf dist/ipf distrib/sets/lists sys usr.sbin/altq
1083: Notes: Only the first item in the description was finished
1084: in this branch.
1085:
1.1 lukem 1086: Branch: sommerfeld_i386mp_1
1087: Description: Multiprocessor support for i386 using Intel MP BIOS.
1.3 sommerfe 1088: Status: Terminated; merged to -current
1.1 lukem 1089: Start Date: 21 Feb 2000
1.2 fvdl 1090: End Date: 01 Oct 2002
1.1 lukem 1091: Base Tag: sommerfeld_i386mpbase_1
1.10 salo 1092: Maintainer: Bill Sommerfeld <sommerfeld@NetBSD.org>
1.1 lukem 1093: Scope: sys/arch/i386
1094: Notes:
1095: Code committed to the branch has booted to multiuser
1096: on at least one system.
1097:
1098: Not guaranteed to compile against mainline since -current
1099: may have changed incompatibly with the last branch update;
1100: use "cvs update -D" to roll-back the rest of the tree to match.
1101:
1102: Please get explicit permission from the maintainer
1103: before each commit, or your changes will be backed out.
1104: Other tags starting with sommerfeld_ are private to
1105: the developer and are guaranteed to be unstable.
1106: Only the maintainer should move tags.
1107:
1108: Note that this branch uses a DIFFERENT scheme for
1.225 wiz 1109: syncing with the mainline. the maintainer uses some private
1110: scripts for keeping them in sync; if you make commits
1.1 lukem 1111: to the branch to "resynchronize" things, you'll
1112: probably do it wrong; instead, ask the maintainer to
1113: resynchronize things.
1114:
1115: See sys/arch/i386/TODO on the branch for a list of known
1116: issues with the branch.
1117:
1118: Branch: thorpej-mips-cache
1119: Description: overhaul MIPS cache support code
1120: Status: Terminated; merged to -current
1121: Start Date: Oct 23 2001
1122: End Date: Nov 14 2001
1123: Base Tag: thorpej-mips-cache-base
1124: Scope: syssrc
1125: Notes: This branch needs more debugging, testing, and more
1126: ports need to be converted to the new world order.
1127:
1128: The following processors have had cache ops
1129: written:
1130:
1131: * R2000/R3000 (cache_r3k) -- light testing,
1132: needs to be beat on a lot more to make
1133: sure it's working.
1134:
1.10 salo 1135: * R4000/R4400 (cache_r4k) -- mhitch@NetBSD.org
1.1 lukem 1136: tracked down a bug, which has been fixed.
1137:
1138: Confirmed working on R4000-with-L2.
1139:
1140: Confirmed working on R4400-no-L2 and
1141: R4400-with-L2.
1142:
1.10 salo 1143: * R4600/R5000 (cache_r5k) -- shin@NetBSD.org
1.1 lukem 1144: has committed fixes to this code.
1145:
1146: Confirmed working on R4600 v2 (SGI IP-22 with
1147: no SysAD L2 cache).
1148:
1149: Confirmed working on RM5260 (Algorithmics P-5064).
1150:
1.10 salo 1151: * TX39 (cache_tx39) -- uch@NetBSD.org has
1.1 lukem 1152: committed fixes to this code. Awaiting
1153: confirmation that it is working properly.
1154:
1.10 salo 1155: * R5900 (cache_r5900) -- uch@NetBSD.org has
1.1 lukem 1156: written this code and tested it on a
1157: PlayStation 2.
1158:
1159: The following ports have been updated to compile (and
1160: use optimized-for-processor bus_dma routines). Those
1161: that have been tested and work are marked with [WORKING].
1162:
1163: * algor [WORKING]
1164:
1165: * arc [WORKING]
1166:
1167: * pmax [WORKING]
1168:
1169: * playstation2 [WORKING]
1170: Needs optimized bus_dmamap_sync().
1171:
1172: * hpcmips [need verification that this is working]
1173: Needs optimized bus_dmamap_sync().
1174:
1175: * sgimips [WORKING]
1176: Needs optimized bus_dmamap_sync().
1177:
1178: * cobalt [need testing]
1179:
1180: * mipsco [need testing]
1181:
1182: * newsmips [need testing]
1183:
1184: Branch: thorpej_scsipi
1185: Description: SCSI/ATAPI midlayer rewrite.
1186: Status: Terminated; merged to -current
1187: Start Date:
1188: End Date: Apr 25 2001
1189: Base Tag: thorpej_scsipi_base, thorpej_scsipi_nbase
1.10 salo 1190: Maintainer: Manuel Bouyer <bouyer@NetBSD.org>,
1191: Jason Thorpe <thorpej@NetBSD.org>
1.1 lukem 1192: Scope: syssrc
1193: Notes: When a change from -current is pulled up please move the
1194: thorpej_scsipi_base tag to the revision you're syncing with.
1195: thorpej_scsipi_nbase is private to maintainer (only
1196: used when syncing the whole branch with HEAD).
1197: Just before the merge, syssrc has been tagged with
1198: thorpej_scsipi_beforemerge
1199:
1200: Branch: thorpej-signal
1201: Description: ?
1202: Status: ?
1203: Start Date:
1204: End Date:
1205: Base Tag: thorpej-signal-base
1.10 salo 1206: Maintainer: Jason Thorpe <thorpej@NetBSD.org>
1.1 lukem 1207: Scope: kernel
1208: Notes:
1209:
1210: Branch: thorpej-setroot
1211: Description: ?
1212: Status: Terminated; merged to -current
1213: Start Date:
1214: End Date:
1215: Base Tag:
1.10 salo 1216: Maintainer: Jason Thorpe <thorpej@NetBSD.org>
1.1 lukem 1217: Scope: kernel
1218: Notes:
1219:
1.84 kardel 1220: Branch: simonb-timecounters
1221: Description: Port FreeBSD timecounters to NetBSD
1.85 kardel 1222: Status: Terminated
1.84 kardel 1223: Start Date: Sat Feb 04 2006
1224: End Date: Wed Jun 07 2006
1225: Base Tag: simonb-timecounters-base
1226: Maintainer: Simon Burge <simonb@NetBSD.org>,
1227: Frank Kardel <kardel@NetBSD.org>
1228: Scope: sys, sbin/savecore, usr.bin/vmstat, usr.sbin/ntp
1229: Notes: early (partial conversion) commit to -current
1230: ok'ed by core@ on 20060605 for testing and further
1231: simplified conversion
1232:
1.236 ad 1233: Branch: vmlocking
1234: Description: Make VM and file system framework MP safe
1235: Status: Terminated
1236: Start Date: 13 March 2007
1237: End Date: 4 December 2007
1238: Base Tag: vmlocking-base
1239: Maintainer: Andrew Doran <ad@NetBSD.org>
1240: Scope: kernel
1241: Notes: Superseded by vmlocking2 branch.
1242:
1243: Branch: vmlocking2
1244: Description: Make VM and file system framework MP safe
1245: Status: Terminated
1246: Start Date: 4 December 2007
1247: End Date: 2 January 2008
1248: Base Tag: vmlocking2-base3
1249: Maintainer: Andrew Doran <ad@NetBSD.org>
1250: Scope: kernel
1251: Notes: Goals:
1252:
1253: - Make VM system / trap handling MP safe.
1254: - Replace simplelocks with mutexes.
1255: - Make file system framework MP safe.
1256:
1257: Status by architecture:
1258:
1259: alpha done
1260: i386 done
1261: amd64 done
1262: mips done
1263: sparc need pmap/trap locking changes
1264: sparc64 done
1265: arm done
1266: powerpc done
1267: hppa done
1268: sh3 done
1269: m68k done
1270: xen need pmap/trap locking changes
1271:
1272: Remaining MI work to do:
1273:
1274: - Check aliased vnode handling. There may be problems.
1275:
1276: Remaining problems:
1277:
1278: - LFS stalls due to v_numoutput leak.
1279:
1.1 lukem 1280: Branch: wrstuden-devbsize
1281: Description: Modify buffer cache to deal with different devices having
1282: different block sizes. Also DEV_BSIZE would go away.
1283: Status: Terminated
1284: Start Date: Aug or Sept 1999
1285: End Date: 1 Apr 2000
1286: Base tag: wrstuden-devbsize-base
1.10 salo 1287: Maintainer: Bill Studenmund <wrstuden@NetBSD.org>
1.1 lukem 1288: Scope: kernel
1289: Notes: No longer active due to lack of time, and introduction
1290: of UBC. In terms of UBC, the primary cache for
1291: file data is the VM cache, which needs to operate
1292: in terms of VM pages. As no existing device has native
1293: pages the same size as our VM pages, there already is
1294: a mapping going on between the VM system and the
1295: underlying blocks. So it would be easier and cleaner
1296: to adjust that to deal w/ different block sizes.
1297: Also with UBC, all i/o is in terms of bytes at an offset
1298: with a certain length, so the exact block size isn't a big
1299: deal.
1300:
1301: Any other wrstuden-devbsize tag may (and should) go away.
1302:
1.193 yamt 1303: Branch: yamt-idlelwp
1304: Description: idle lwp, and some changes depending on it.
1305:
1306: 1. separate context switching and thread scheduling.
1307: (cf. gmcgarry_ctxsw)
1308: 2. implement idle lwp.
1309: 3. clean up related MD/MI interfaces.
1310: 4. make scheduler(s) modular.
1311:
1312: Status: Terminated; merged to -current
1313: Start Date: Fri Feb 17 2007
1314: End Date: Thu May 17 2007
1315: Base Tag: yamt-idlelwp-base8
1316: Maintainer: YAMAMOTO Takashi <yamt@NetBSD.org>
1317: Scope: src/sys (src/common is tagged but not branched)
1318: Notes:
1319: Status of ports:
1320: alpha [ Done, UP tested, MP not tested ]
1321: i386 [ Done, tested ]
1322: amd64 [ Done, tested ]
1.204 tsutsui 1323: mips [ Done, both MIPS1 and MIPS3 tested]
1324: sparc [ Done, UP tested, MP might have
1325: some problem after newlock2 merge ]
1326: sparc64 [ Done, tested ]
1.205 skrll 1327: arm [ Done, SA1 tested. See PR 36548 ]
1.193 yamt 1328: macppc/powerpc [ Done, OEA tested ]
1.205 skrll 1329: hppa [ Done, tested ]
1.193 yamt 1330: sh3 [ Done, tested ]
1331: vax [ Done, UP tested, MP untested ]
1.204 tsutsui 1332: m68k [ Done, tested on several ports ]
1.193 yamt 1333: ns32k [ broken ]
1334: ia64 [ broken ]
1335: pdp10 [ broken ]
1336:
1337: How to adapt a port?
1338:
1339: - unify cpu_switch, cpu_exit, cpu_switchto into
1340: a single cpu_switchto. see cpu_switchto.9.
1341:
1342: - implement cpu_idle. see cpu_idle.9.
1343:
1344: - add a flag argument to cpu_need_resched.
1345: handle RESCHED_IMMED flag, which means "cause a preemption
1346: as soon as possible." eg. in the case of MULTIPROCESSOR,
1347: send an IPI to the target cpu.
1348:
1349: - "curlwp == NULL" is not a valid check for idle state anymore.
1350: use "(curlwp->l_flag & LW_IDLE) != 0" instead. curlwp is
1351: almost always non-NULL, with exceptions like early on boot.
1352:
1353: - remove idle pcbs.
1354:
1355: - (if MULTIPROCESSOR) tweak processor trampoline code.
1356:
1357: - (if MULTIPROCESSOR) call mi_cpu_attach when attaching
1358: secondary processors.
1359:
1360: - (if schedhz!=0) call schedclock regardless of the value of
1361: curlwp.
1362:
1363: - of course, update MD users of scheduler/switching API.
1364:
1.248 yamt 1365: Branch: yamt-lazymbuf
1366: Description: change the way to share mbuf external storage so that
1367: it can work without kernel_lock.
1368: Status: Terminated; merged to -current
1369: Start Date: Wed Jul 6 2005
1370: End Date: Mon Mar 24 2008
1371: Base Tag: yamt-lazymbuf-base14
1372: Maintainer: YAMAMOTO Takashi <yamt@NetBSD.org>
1373: Scope: src/sys (src/common is tagged but not branched)
1374: Notes:
1375:
1.25 yamt 1376: Branch: yamt-km, yamt-km-doc
1.19 yamt 1377: Description: simplify/improve kernel memory management and bootstrap
1.46 yamt 1378: Status: Terminated; merged to -current
1.19 yamt 1379: Start Date: Tue Jan 25 2005
1.46 yamt 1380: End Date: Fri Apr 1 2005
1.45 yamt 1381: Base Tag: yamt-km-base{,2,3,4}, yamt-km-doc-base
1.19 yamt 1382: Maintainer: YAMAMOTO Takashi <yamt@NetBSD.org>
1.25 yamt 1383: Scope: yamt-km: src/sys
1384: yamt-km-doc: src/share/man/man9/uvm.9
1.19 yamt 1385: Notes: http://mail-index.NetBSD.org/tech-kern/2004/12/25/0005.html
1386:
1.24 yamt 1387: the followings are per-port status.
1388: (account names mean "tested by".)
1389:
1.20 yamt 1390: works enough to go to multiuser:
1.45 yamt 1391: alpha, i386, xen (yamt@)
1.24 yamt 1392: pc532 (simonb@)
1.28 yamt 1393: alpha, i386, mac68k, macppc, pmax, shark,
1.34 yamt 1394: sparc, sparc64, sun3, x68k (chs@)
1.39 yamt 1395: cobalt, dreamcast, hp300, news68k, newsmips,
1396: sun3x (tsutsui@)
1.31 yamt 1397: amiga (mhitch@)
1.32 yamt 1398: cats, hp700 (skrll@)
1.45 yamt 1399: xen (bouyer@)
1.28 yamt 1400:
1401: known to have the same problem as trunk:
1402: vax (chs@, stuck while running kvm_mkdb)
1.24 yamt 1403:
1404: known to have a problem:
1.35 yamt 1405: luna68k (and, if any, other m68k ports which use TTR)
1406: needs to be revisited.
1.39 yamt 1407: -> for luna68k, although not tested,
1408: Sysmap has been moved to avoid kva conflict with
1409: I/O ranges.
1.20 yamt 1410:
1411: buildable:
1412: src/sys/arch/acorn26/conf/GENERIC
1413: src/sys/arch/acorn32/conf/GENERIC
1414: src/sys/arch/algor/conf/P6032
1415: src/sys/arch/alpha/conf/GENERIC
1416: src/sys/arch/alpha/conf/GENERIC.MP
1417: src/sys/arch/amd64/conf/GENERIC
1418: src/sys/arch/amd64/conf/GENERIC.MP
1419: src/sys/arch/amiga/conf/GENERIC
1420: src/sys/arch/arc/conf/GENERIC
1421: src/sys/arch/atari/conf/MILAN-PCIIDE
1422: src/sys/arch/bebox/conf/GENERIC
1423: src/sys/arch/cats/conf/GENERIC
1424: src/sys/arch/cesfic/conf/GENERIC
1425: src/sys/arch/cobalt/conf/GENERIC
1426: src/sys/arch/dreamcast/conf/GENERIC
1427: src/sys/arch/evbarm/conf/TS7200
1428: src/sys/arch/evbppc/conf/WALNUT
1429: src/sys/arch/evbsh3/conf/COMPUTEXEVB
1430: src/sys/arch/evbsh5/conf/CAYMAN64
1431: src/sys/arch/hp300/conf/GENERIC
1432: src/sys/arch/hp700/conf/GENERIC
1433: src/sys/arch/hpcarm/conf/JORNADA728
1434: src/sys/arch/hpcmips/conf/GENERIC
1435: src/sys/arch/hpcsh/conf/GENERIC
1436: src/sys/arch/hpcsh/conf/HPW650PA
1437: src/sys/arch/i386/conf/GENERIC
1438: src/sys/arch/i386/conf/GENERIC.MP
1.40 yamt 1439: src/sys/arch/i386/conf/XEN0
1440: src/sys/arch/i386/conf/XENU
1.20 yamt 1441: src/sys/arch/ibmnws/conf/GENERIC
1442: src/sys/arch/iyonix/conf/GENERIC
1443: src/sys/arch/luna68k/conf/GENERIC
1444: src/sys/arch/mac68k/conf/GENERIC
1445: src/sys/arch/macppc/conf/GENERIC
1446: src/sys/arch/macppc/conf/GENERIC.MP
1447: src/sys/arch/mipsco/conf/GENERIC
1.40 yamt 1448: src/sys/arch/mmeye/conf/GENERIC
1.20 yamt 1449: src/sys/arch/mvme68k/conf/GENERIC
1450: src/sys/arch/netwinder/conf/GENERIC
1451: src/sys/arch/news68k/conf/GENERIC
1452: src/sys/arch/newsmips/conf/GENERIC
1453: src/sys/arch/next68k/conf/GENERIC
1454: src/sys/arch/ofppc/conf/GENERIC
1455: src/sys/arch/pc532/conf/GENERIC
1456: src/sys/arch/pmax/conf/GENERIC
1457: src/sys/arch/prep/conf/GENERIC
1458: src/sys/arch/sandpoint/conf/GENERIC
1459: src/sys/arch/sbmips/conf/GENERIC
1460: src/sys/arch/sgimips/conf/GENERIC32_IP3x
1461: src/sys/arch/shark/conf/GENERIC
1462: src/sys/arch/sparc/conf/GENERIC
1463: src/sys/arch/sparc/conf/GENERIC.MP
1464: src/sys/arch/sparc64/conf/GENERIC
1465: src/sys/arch/sparc64/conf/GENERIC.MP
1466: src/sys/arch/sun2/conf/GENERIC
1467: src/sys/arch/sun3/conf/GENERIC
1468: src/sys/arch/vax/conf/GENERIC
1469: src/sys/arch/vax/conf/GENERIC.MP
1470: src/sys/arch/x68k/conf/GENERIC
1471:
1.42 yamt 1472: src/sys/arch/playstation2/conf/GENERIC
1473:
1.97 yamt 1474: Branch: yamt-pdpolicy
1475: Description: play with page replacement policy
1476: - separate page replacement policy from the rest of kernel
1477: - implement alternative replacement policy
1478: - related read-ahead adjustment?
1479: Status: Terminated; merged to -current
1480: Start Date: Sun Mar 5 2006
1481: End Date: Sat Sep 16 2006
1482: Base Tag: yamt-pdpolicy-base9
1483: Maintainer: YAMAMOTO Takashi <yamt@NetBSD.org>
1484: Scope: src/sys (src/common is tagged but not branched)
1485: Notes:
1486:
1.54 yamt 1487: Branch: yamt-readahead
1488: Description: play with file readahead
1.58 yamt 1489: Status: Terminated; merged to -current
1.54 yamt 1490: Start Date: Mon Nov 14 2005
1.58 yamt 1491: End Date: Wed Nov 30 2005
1.57 yamt 1492: Base Tag: yamt-readahead-base3
1.54 yamt 1493: Maintainer: YAMAMOTO Takashi <yamt@NetBSD.org>
1494: Scope: src/sys
1495: Notes:
1496:
1.60 yamt 1497: Branch: yamt-uio_vmspace
1498: Description: uio_lwp/uio_segflg -> uio_vmspace
1.67 yamt 1499: Status: Terminated; merged to -current
1.60 yamt 1500: Start Date: Mon Dec 31 2005
1.67 yamt 1501: End Date: Wed Mar 1 2006
1.66 yamt 1502: Base Tag: yamt-uio_vmspace-base5
1.60 yamt 1503: Maintainer: YAMAMOTO Takashi <yamt@NetBSD.org>
1504: Scope: src/sys
1505: Notes:
1506:
1.151 yamt 1507: Branch: yamt-splraiseipl
1508: Description: finish implementing splraiseipl (and makeiplcookie).
1509: http://mail-index.NetBSD.org/tech-kern/2006/07/01/0000.html
1510:
1511: - completes workqueue(9) and netbt.
1512: - fix PR/33218.
1513:
1514: Status: Terminated; merged to -current
1515: Start Date: Mon Sep 18 2006
1516: End Date: Fri Dec 22 2006
1517: Base Tag: yamt-splraiseipl-base5
1518: Maintainer: YAMAMOTO Takashi <yamt@NetBSD.org>
1519: Scope: src/sys (src/common is tagged but not branched)
1520: Notes:
1521: tested (by who):
1522: alpha (yamt)
1523: alpha (pavel)
1524: amd64 (reported privately)
1525: cobalt (tsutsui)
1526: ews4800mips (tsutsui)
1527: hp300 (tsutsui)
1528: hpcarm (reported privately)
1529: i386 (yamt)
1530: macppc (tsutsui)
1531: news68k (tsutsui)
1532: sgimips(IP32) (tsutsui)
1533: sparc(sun4c) (tsutsui)
1534: sun2 (tsutsui)
1535: sun3 (tsutsui)
1536: sun3x (tsutsui)
1537: xen (yamt)
1538:
1539: compile-tested:
1540: acorn26
1541: acorn32
1542: algor
1543: amiga
1544: arc
1545: atari
1546: bebox
1547: cats
1548: cesfic
1549: dreamcast
1550: evbarm
1551: evbmips
1552: evbppc(marvell)
1553: evbppc(ibm4xx)
1554: evbsh3
1555: hp700
1556: hpcmips
1557: hpcsh
1558: ia64
1559: ibmnws
1560: iyonix
1561: landisk
1562: luna68k
1563: mac68k
1564: mmeye
1565: mvme68k
1566: mvmeppc
1567: mipsco
1568: netwinder
1569: newsmips
1570: next68k
1571: ofppc
1572: pc532
1573: pmax
1574: pmppc
1575: prep
1576: sandpoint
1577: sbmips
1578: shark
1579: sparc
1580: sparc64
1581: vax
1582: x68k
1583: zaurus
1584:
1585: not tested:
1586: pdp10 (i don't know how to build)
1587: sh5 (not buildable with an unrelated problem.)
1588:
1589: compile CAYMAN64/netbsd32_sa.o
1590: cc1: warnings being treated as errors
1591: /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c: In function 'netbsd32_sa_ucsp':
1592: /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c:126: warning: implicit declaration of function '_UC_MACHINE32_SP'
1593: --- netbsd32_sa.o ---
1594: *** [netbsd32_sa.o] Error code 1
1595: 1 error
1596:
1597: notyet:
1598: amigappc
1599: playstation2
1600:
1.79 briggs 1601: Branch: yamt-vop
1602: Description: remove several VOPs
1603: Status: Terminated; merged to -current
1604: Start Date: Wed Oct 19 2005
1605: End Date: Wed Nov 2 2005
1606: Base Tag: yamt-vop-base3
1.68 yamt 1607: Maintainer: YAMAMOTO Takashi <yamt@NetBSD.org>
1608: Scope: src/sys
1.79 briggs 1609: Notes: http://mail-index.NetBSD.org/tech-kern/2005/09/27/0000.html
1.71 peter 1610:
1.214 yamt 1611: Branch: yamt-x86pmap
1612: Description: merge i386 and amd64 pmap
1613: Status: Terminated; merged to -current
1614: Start Date: Mon Sep 24 2007
1615: End Date: Fri Oct 19 2007
1616: Base Tag: yamt-x86pmap-base4
1617: Maintainer: YAMAMOTO Takashi <yamt@NetBSD.org>
1618: Scope: src/sys (src/common is tagged but not branched)
1619: Notes:
1620:
1.98 gdamore 1621: Branch: gdamore-uart
1622: Description: Add register table support to com driver.
1623: Status: Active
1624: Start Date: 14 June 2006
1625: End Date: 13 July 2006
1626: Base Tag: gdamore-uart-base
1627: Maintainer: Garrett D'Amore <gdamore@NetBSD.org>
1628: Scope: kernel
1629: Notes: Results in consolidation of Alchemy (mips/dev/alchemy/aucom.c)
1630: com support, and also removes a nasty hack from Atheros com.
1631:
1.79 briggs 1632: ########################################################################
1.1 lukem 1633: # Other:
1.79 briggs 1634: ########################################################################
1.1 lukem 1635:
1636: Branch: magnum
1637: Description: ?
1638: Status: ?
1639: Start Date:
1640: End Date:
1641: Base Tag: magnum-base
1642: Maintainer: ?
1643: Scope: kernel
1644: Notes:
1.69 elad 1645:
CVSweb <webmaster@jp.NetBSD.org>