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