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