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