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