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