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