1 # $NetBSD: BRANCHES,v 1.369 2025/07/30 19:19:13 martin 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 47 Branch: comdex-fall-1999 48 Description: Special release branch for pre-1.5 release at 49 Fall 1999 COMDEX. 50 Status: Terminated 51 Start Date: 52 End Date: 53 Base Tag: comdex-fall-1999-base 54 Maintainer: mycroft 55 Scope: Entire tree. 56 Notes: 57 58 Branch: netbsd-0-9 59 Description: The NetBSD 0.9 release branch 60 Status: Terminated 61 Start Date: 62 End Date: 63 Base Tag: netbsd-0-9-base 64 Maintainer: Release Engineering <releng (a] NetBSD.org> 65 Scope: Entire tree. 66 Notes: 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 70 Branch: netbsd-1-0 71 Description: The NetBSD 1.0 release branch 72 Status: Terminated 73 Start Date: 74 End Date: 75 Base Tag: netbsd-1-0-base 76 Maintainer: Release Engineering <releng (a] NetBSD.org> 77 Scope: Entire tree. 78 Notes: 79 Commits restricted to release engineering. 80 81 Branch: netbsd-1-1 82 Description: The NetBSD 1.1 release branch 83 Status: Terminated 84 Start Date: 85 End Date: 86 Base Tag: netbsd-1-1-base 87 Maintainer: Release Engineering <releng (a] NetBSD.org> 88 Scope: Entire tree. 89 Notes: 90 Commits restricted to release engineering. 91 92 Branch: netbsd-1-2 93 Description: The NetBSD 1.2 release branch 94 Status: Terminated 95 Start Date: 96 End Date: 97 Base Tag: netbsd-1-2-base 98 Maintainer: Release Engineering <releng (a] NetBSD.org> 99 Scope: Entire tree. 100 Notes: 101 Commits restricted to release engineering. 102 103 Branch: netbsd-1-3 104 Description: The NetBSD 1.3 release branch 105 Status: Terminated 106 Start Date: 107 End Date: 108 Base Tag: netbsd-1-3-base 109 Maintainer: Release Engineering <releng (a] NetBSD.org> 110 Scope: Entire tree. 111 Notes: 112 Commits restricted to release engineering. 113 114 Branch: netbsd-1-4 115 Description: The NetBSD 1.4 release branch 116 Status: Terminated 117 Start Date: 1 Apr 2000 118 End Date: 119 Base Tag: netbsd-1-4-base 120 Maintainer: 1.4 Release Engineering <releng-1-4 (a] NetBSD.org> 121 Scope: Entire tree. 122 Notes: 123 Commits restricted to release engineering. 124 125 Branch: netbsd-1-5 126 Description: The NetBSD 1.5 release branch 127 Status: Terminated 128 Start Date: 20 Jun 2000 129 End Date: 26 Jan 2005 130 Base Tag: netbsd-1-5-base 131 Maintainer: 1.5 Release Engineering <releng-1-5 (a] NetBSD.org> 132 Scope: Entire tree. 133 Notes: 134 Commits restricted to release engineering. 135 136 Branch: netbsd-1-6 137 Description: The NetBSD 1.6 release branch 138 Status: Terminated 139 Start Date: 22 May 2002 140 End Date: 141 Base Tag: netbsd-1-6-base 142 Maintainer: 1.6 Release Engineering <releng-1-6 (a] NetBSD.org> 143 Scope: Entire tree. 144 Notes: 145 Commits restricted to Release Engineering. 146 147 Branch: netbsd-2 148 Description: The NetBSD 2 release branch 149 Status: Terminated 150 Start Date: 23 Dec 2004 151 End Date: 152 Base Tag: netbsd-2-base 153 Maintainer: 2 Release Engineering <releng-2 (a] NetBSD.org> 154 Scope: Entire tree. (src + xsrc) 155 Notes: 156 Commits restricted to Release Engineering. 157 158 Branch: netbsd-2-0 159 Description: Originally the NetBSD 2.0 release branch and now the branch 160 tracking security/critical fixes for the NetBSD 2.0 series 161 Status: Terminated 162 Start Date: 28 Mar 2004 and changed for security/critical function on 163 23 Dec 2004 164 End Date: 165 Base Tag: netbsd-2-0-base 166 Maintainer: 2.0 Release Engineering <releng-2-0 (a] NetBSD.org> 167 Scope: Entire tree. (src + xsrc) 168 Notes: 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 173 Branch: netbsd-2-1 174 Description: Tracking security/critical fixes for NetBSD 2.1 175 Status: Terminated 176 Start Date: 26 Oct 2005 177 End Date: 178 Base Tag: netbsd-2-1-RELEASE 179 Maintainer: 2 Release Engineering <releng-2 (a] NetBSD.org> 180 Scope: Entire tree. (src + xsrc) 181 Notes: 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 185 Branch: netbsd-3 186 Description: The NetBSD 3 release branch 187 Status: Terminated 188 Start Date: 16 Mar 2005 189 End Date: 190 Base Tag: netbsd-3-base 191 Maintainer: 3 Release Engineering <releng-3 (a] NetBSD.org> 192 Scope: Entire tree. (src + xsrc) 193 Notes: 194 Commits restricted to Release Engineering. 195 196 Branch: netbsd-4 197 Description: The NetBSD 4 release branch 198 Status: Terminated 199 Start Date: 8 Aug 2006 200 End Date: 201 Base Tag: netbsd-4-base 202 Maintainer: 4 Release Engineering <releng-4 (a] NetBSD.org> 203 Scope: Entire tree. (src + xsrc) 204 Notes: 205 Commits restricted to Release Engineering. 206 207 Branch: netbsd-5 208 Description: The NetBSD 5 release branch 209 Status: Terminated 210 Start Date: 31 Oct 2008 211 End Date: 9 Nov 2015 212 Base Tag: netbsd-5-base 213 Maintainer: 5.0 Release Engineering <releng-5 (a] NetBSD.org> 214 Scope: Entire tree. (src + xsrc) 215 Notes: 216 Commits restricted to Release Engineering. 217 218 Branch: netbsd-5-0 219 Description: Tracking security/critical fixes for NetBSD 5.0 220 Status: Terminated 221 Start Date: 29 Apr 2009 222 End Date: 223 Base Tag: netbsd-5-0-RELEASE 224 Maintainer: 5.0 Release Engineering <releng-5 (a] NetBSD.org> 225 Scope: Entire tree. (src + xsrc) 226 Notes: Commits restricted to Release Engineering. 227 228 Branch: netbsd-5-1 229 Description: Tracking security/critical fixes for NetBSD 5.1 230 Status: Terminated 231 Start Date: 232 End Date: 9 Nov 2015 233 Base Tag: netbsd-5-1-RELEASE 234 Maintainer: 5.1 Release Engineering <releng-5 (a] NetBSD.org> 235 Scope: Entire tree. (src + xsrc) 236 Notes: Commits restricted to Release Engineering. 237 238 Branch: netbsd-5-2 239 Description: Tracking security/critical fixes for NetBSD 5.2 240 Status: Terminated 241 Start Date: 242 End Date: 9 Nov 2015 243 Base Tag: netbsd-5-2-RELEASE 244 Maintainer: 5.2 Release Engineering <releng-5 (a] NetBSD.org> 245 Scope: Entire tree. (src + xsrc) 246 Notes: Commits restricted to Release Engineering. 247 248 Branch: netbsd-6 249 Description: The NetBSD 6 release branch 250 Status: Terminated 251 Start Date: 15 Feb 2012 252 End Date: 253 Base Tag: netbsd-6-base 254 Maintainer: 6.0 Release Engineering <releng-6 (a] NetBSD.org> 255 Scope: Entire tree. (src + xsrc) 256 Notes: 257 Commits restricted to Release Engineering. 258 259 Branch: netbsd-6-0 260 Description: Tracking security/critical fixes for NetBSD 6.0 261 Status: Terminated 262 Start Date: 17 Oct 2012 263 End Date: 264 Base Tag: netbsd-6-0-RELEASE 265 Maintainer: 6.0 Release Engineering <releng-6 (a] NetBSD.org> 266 Scope: Entire tree. (src + xsrc) 267 Notes: 268 Commits restricted to Release Engineering. 269 270 Branch: netbsd-6-1 271 Description: Tracking security/critical fixes for NetBSD 6.1 272 Status: Terminated 273 Start Date: 01 Feb 2013 274 End Date: 275 Base Tag: netbsd-6-1-RELEASE 276 Maintainer: 6.1 Release Engineering <releng-6 (a] NetBSD.org> 277 Scope: Entire tree. (src + xsrc) 278 Notes: 279 Commits restricted to Release Engineering. 280 281 Branch: netbsd-7 282 Description: The NetBSD 7 release branch 283 Status: Active 284 Start Date: 11 Aug 2014 285 End Date: 286 Base Tag: netbsd-7-base 287 Maintainer: 7.0 Release Engineering <releng-7 (a] NetBSD.org> 288 Scope: Entire tree. (src + xsrc) 289 Notes: 290 Commits restricted to Release Engineering. 291 292 Branch: netbsd-7-0 293 Description: Tracking security/critical fixes for NetBSD 7.0 294 Status: Active 295 Start Date: 10 Oct 2015 296 End Date: 297 Base Tag: netbsd-7-0-RELEASE 298 Maintainer: 7.0 Release Engineering <releng-7 (a] NetBSD.org> 299 Scope: Entire tree. (src + xsrc) 300 Notes: 301 Commits restricted to Release Engineering. 302 303 Branch: netbsd-7-1 304 Description: Tracking security/critical fixes for NetBSD 7.1 305 Status: Active 306 Start Date: 15 Mar 2017 307 End Date: 308 Base Tag: netbsd-7-1-RELEASE 309 Maintainer: NetBSD 7 Release Engineering <releng-7 (a] NetBSD.org> 310 Scope: Entire tree. (src + xsrc) 311 Notes: 312 Commits restricted to Release Engineering. 313 314 Branch: netbsd-8 315 Description: The NetBSD 8 release branch 316 Status: Active 317 Start Date: 2017-06-04 318 End Date: 319 Base Tag: netbsd-8-base 320 Maintainer: Release Engineering <releng (a] NetBSD.org> 321 Scope: Entire tree. (src + xsrc) 322 Notes: 323 Commits restricted to Release Engineering. 324 325 Branch: netbsd-9 326 Description: The NetBSD 9 release branch 327 Status: Active 328 Start Date: 2019-07-30 329 End Date: 330 Base Tag: netbsd-9-base 331 Maintainer: Release Engineering <releng (a] NetBSD.org> 332 Scope: Entire tree. (src + xsrc) 333 Notes: 334 Commits restricted to Release Engineering. 335 336 Branch: netbsd-10 337 Description: The NetBSD 10 release branch 338 Status: Active 339 Start Date: 2022-12-16 340 End Date: 341 Base Tag: netbsd-10-base 342 Maintainer: Release Engineering <releng (a] NetBSD.org> 343 Scope: Entire tree. (src + xsrc) 344 Notes: 345 Commits restricted to Release Engineering. 346 347 Branch: netbsd-11 348 Description: The NetBSD 11 release branch 349 Status: Active 350 Start Date: 2025-07-30 351 End Date: 352 Base Tag: netbsd-11-base 353 Maintainer: Release Engineering <releng (a] NetBSD.org> 354 Scope: Entire tree. (src + xsrc) 355 Notes: 356 Commits restricted to Release Engineering. 357 358 ######################################################################## 359 # Individual developers' branches (Active/Dormant): 360 ######################################################################## 361 362 Branch: ad-audiomp 363 Description: Add MP locking to the audio drivers 364 Status: Terminated 365 Start Date: 28 February 2007 366 End Date: 7 December 2008 367 Base Tag: ad-audiomp-base 368 Maintainer: Andrew Doran <ad (a] NetBSD.org> 369 Scope: kernel 370 Notes: Making the audio drivers MP safe is necessary before efforts 371 can be made to make the VM system MP safe. About 1/2 of the 372 drivers are converted, the remaining 1/2 need more changes. 373 374 As of import this is snapshot of work in progress and so 375 may not compile; in particular the midi changes are very 376 much "in progress". The audio component has been tested 377 and verified to work with emuxki and auvia. There may 378 be a locking issue in the ac97 code at boot. 379 380 The are two locks per device instance, an ISR lock and 381 a character device lock. The ISR lock replaces calls to 382 splaudio()/splx(), and will be held across calls to device 383 methods which were called at splaudio() before (e.g. 384 trigger_output). The character device lock is held across 385 calls to nearly all of the methods, excluding some only 386 used for initialization, e.g. get_locks. This needs to be 387 documented at merge time. 388 389 To test on a multi way x86 system, search for "mpsafe" in 390 x86/x86/intr.c and change IPL_SCHED to IPL_AUDIO. Run a job 391 that will acquire the ISR lock (depends on the hardware, but 392 "while true; do mixerctl -a > /dev/null; done" may suffice). 393 Play audio, run lockstat and verify that that there is 394 contention on the ISR lock. 395 396 Branch: ad-audiomp2 397 Description: Add MP locking to the audio drivers 398 Status: Terminated 399 Start Date: 7 December 2008 400 End Date: 19 November 2011 401 Base Tag: ad-audiomp2-base 402 Maintainer: Andrew Doran <ad (a] NetBSD.org> 403 Scope: kernel 404 Notes: Ressurect ad-audiomp, make the audio drivers MP safe. 405 406 Branch: ad-namecache 407 Description: Redo the namecache 408 Status: Active 409 Start Date: 8 January 2020 410 End Date: 411 Base Tag: ad-namecache-base 412 Maintainer: Andrew Doran <ad (a] NetBSD.org> 413 Scope: src/sys src/common 414 Notes: 1) Redo the namecache to focus on per-directory data 415 structures, removing the huge hashtable and nasty locking 416 scheme. 417 418 Initially this uses rbtrees (because that's what's there). 419 The intent is that ultimately some other data structure 420 will be used. 421 422 2) Experiment with having namei() traverse the cache and 423 avoid vnode locks except for the leaf in the totally 424 in-cache case. 425 426 Branch: agc-netpgp-standalone 427 Description: Remove dependency on openssl libraries in netpgp 428 Status: Active 429 Start Date: 5 May 2012 430 End Date: 431 Base Tag: agc-netpgp-standalone-base 432 Maintainer: Alistair Crooks <agc (a] NetBSD.org> 433 Scope: src/crypto/external/bsd/netpgp 434 Notes: This branch is used to develop the version of netpgp 435 which has its own version of bignum, ciphers, and signatures 436 libraries, so that it is able to operate without openssl 437 being in place. 438 439 Branch: agc-symver 440 Description: Add library symbol versioning information 441 Status: Active 442 Start Date: 24 March 2013 443 End Date: 444 Base Tag: agc-symver-base 445 Maintainer: Alistair Crooks <agc (a] NetBSD.org> 446 Scope: src 447 Notes: This branch is used to develop DSO symbol versioning, allowing 448 symbols to be added, modified and removed from shared libraries. 449 450 Branch: bjh21-hydra 451 Description: Simtec Hydra support and ARM SMP in general 452 Status: Dormant 453 Start Date: 18 Oct 2002 454 End Date: 455 Base Tag: bjh21-hydra-base 456 Maintainer: Ben Harris <bjh21 (a] NetBSD.org> 457 Scope: sys/arch/arm sys/arch/acorn32 458 Notes: This code was on a branch because it involves changes to 459 cpuswitch.S which would otherwise make merging the 460 nathanw_sa branch difficult. 461 462 Branch: bouyer-socketcan 463 Description: Implement a CAN socket layer compatible with linux SocketCAN 464 Status: Terminated 465 Start Date: Sun Jan 15 2017 466 End Date: May 27 2017 467 Base Tag: bouyer-socketcan-base 468 Maintainer: Manuel Bouyer <bouyer (a] NetBSD.org> 469 Scope: src/ 470 Notes: Some documentation on SocketCAN is there: 471 https://www.kernel.org/doc/Documentation/networking/can.txt 472 473 Branch: cherry-xenmp 474 Description: Port i386 and amd64 Xen kernels to run MP 475 Status: Terminated 476 Start Date: 1st June 2011 477 End Date: 13th January 2012 478 Base Tag: cherry-xenmp-base 479 Maintainer: Cherry G. Mathew <cherry (a] NetBSD.org> 480 Scope: kernel 481 Notes: None 482 483 Branch: chris-arm-intr-rework 484 Description: Rework arm interrupt handling code 485 Status: Dormant 486 Start Date: 11 Aug 2007 487 End Date: 488 Base Tag: chris-arm-intr-rework-base 489 Maintainer: Chris Gilbert <chris (a] NetBSD.org> 490 Scope: sys/arch/arm sys/arch/cats (other arm archs to follow) 491 Notes: Rework arm interrupt code to provide a shared set of interrupt 492 routines, and allow improvements to be shared across all arm 493 based hardware. 494 495 Branch: gmcgarry_ucred 496 Description: Integrate and encapsulate user credentials 497 Status: Dormant 498 Start Date: 18 December 2002 499 End Date: 500 Base Tag: gmcgarry_ucred_base 501 Maintainer: Gregory McGarry <gmcgarry (a] NetBSD.org> 502 Scope: kernel 503 Notes: merge pcred and ucred and poolify 504 505 Branch: hpcarm-cleanup 506 Description: Fix build problems for hpcarm 507 Status: Active 508 Start Date: 31 July 2007 509 End Date: 510 Base Tag: hpcarm-cleanup-base 511 Maintainer: Robert Swindells <rjs (a] NetBSD.org> 512 Scope: kernel 513 Notes: Modify SA11x0 interrupt code to match PXA2x0 equivalent. 514 515 Branch: itohy-usb1 516 Description: USB stack overhaul, mostly DMA related 517 Status: Terminated 518 Start Date: 22 May 2007 519 End Date: 520 Base Tag: itohy-usb1-base 521 Maintainer: ITOH Yasufumi <itohy (a] NetBSD.org> 522 Scope: kernel 523 Notes: To check out the kernel source tree, 524 1. check out checkout script 525 cvs checkout -ritohy-usb1 src/sys/dev/usb/filelist 526 2. update files in the branch 527 sh -e src/sys/dev/usb/filelist 528 529 Branch: jruoho-x86intr 530 Description: Cleanup and rework the x86 APIC and PIC subsystems 531 Status: Active 532 Start Date: 17 January 2011 533 End Date: 534 Base Tag: jruoho-x86intr-base 535 Maintainer: Jukka Ruohonen <jruoho (a] NetBSD.org> 536 Scope: kernel 537 Notes: This branch aims to cleanup the x86 interrupt routing code. 538 In particular, a new implementation is provided for all 539 elements of the APIC that involve ACPI. In addition, better 540 abstractions are provided for the whole PIC layer. The main 541 work areas are sys/arch/x86 and sys/dev/acpi. 542 543 Branch: jym-xensuspend 544 Description: Implement xm save/restore/migrate for NetBSD domU 545 Status: Terminated 546 Start Date: 2009-02-08 547 End Date: 2011-09-20 548 Base Tag: jym-xensuspend-base 549 Maintainer: Jean-Yves Migeon <jym (a] NetBSD.org> 550 Scope: kernel 551 Notes: This branch contains the code required to support the Xen 552 save/restore/migrate facilities. It affects domU frontend 553 drivers (xbd, xennet, xencons, hypervisor), autoconf(9) 554 machinery, as well as MD code (mostly pmap(9)). 555 556 Branch: kame 557 Description: KAME Project 558 Status: Dormant 559 Start Date: 28 Jun 1999 560 End Date: 561 Base Tag: 562 Maintainer: Jun-ichiro itojun Hagino <itojun (a] NetBSD.org> 563 Scope: kernel 564 Notes: http://www.kame.net 565 Used for "reference" purposes for early part of KAME 566 integration effort. The branch is not actively used, as I 567 (itojun) use patch(1) and diff(1) for the KAME syncs. 568 569 Branch: keiichi-mipv6 570 Description: Developing Mobile IPv6 function 571 Status: Active 572 Start Date: 21 Feb 2008 573 End Date: 574 Base Tag: keiichi-mipv6-base 575 Maintainer: Keiichi Shima <keiichi (a] netbsd.org> 576 Scope: sys, sbin, libc/net, distrib/sets, share/man/ 577 Notes: http://www.mobileip.jp/ 578 Work on developing Mobile IPv6/NEMO BS functions and 579 related MIPv6 based advanced functions on NetBSD. 580 Please consult keiichi for joining this activity. 581 582 Branch: kent-audio2 583 Description: In-kernel audio mixer 584 Status: Active 585 Start Date: Sun Jan 16 2005 586 End Date: 587 Base Tag: kent-audio2-base 588 Maintainer: TAMURA Kent <kent (a] NetBSD.org> 589 Scope: kernel (audio device drivers) 590 Notes: http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html 591 Please consult with the maintainer before committing 592 to this branch. 593 This branch is not expected to be compilable yet. 594 595 Branch: khorben-n900 596 Description: Supporting the Nokia N900 smartphone 597 Status: Active 598 Start Date: 2013-05-07 599 Maintainer: Pierre Pronchery <khorben (a] netbsd.org> 600 Scope: kernel (OMAP3 support, device drivers) 601 Notes: Do not hesitate to communicate any change that would be welcome 602 in HEAD. 603 604 Branch: matt-mips64 605 Description: Rototill the mips code to support LP64 mips and N32/N64 ABIs 606 Status: Mostly dead 607 Start Date: 2007-07-17 608 End Date: 609 Base Tag: matt-mips64-base 610 Maintainer: Matt Thomas <matt (a] NetBSD.org> 611 Scope: kernel & userland 612 Notes: 613 614 Branch: matt-nb5-mips64 615 Description: Rototill the mips code to support LP64 mips and N32/N64 ABIs 616 Status: Active 617 Start Date: 2009-08-01 618 End Date: 619 Base Tag: netbsd-5-1-RELEASE 620 Maintainer: Matt Thomas <matt (a] NetBSD.org> 621 Scope: kernel & userland 622 Notes: 623 624 Branch: matt-nb5-pq3 625 Description: Rototill the powerpc code to support mpc85xx 626 Status: Inactive 627 Start Date: 2010-12-20 628 End Date: 629 Base Tag: matt-nb5-pq3-base 630 Maintainer: Matt Thomas <matt (a] NetBSD.org> 631 Scope: kernel & userland 632 Notes: 633 634 Branch: matt-nb8-mediatek 635 Description: Add support for various MediaTek SoCs 636 Status: Active 637 Start Date: 2017-10-27 638 End Date: 639 Base Tag: matt-nb8-mediatek-base 640 Maintainer: Matt Thomas <matt (a] NetBSD.org> 641 Scope: kernel & userland 642 Notes: 643 644 Branch: mjf-devfs2 645 Description: device file system supporting dynamic device nodes 646 Status: Active 647 Start Date: 21 February 2008 648 End Date: 649 Base Tag: mjf-devfs2-base 650 Maintainer: Matt Fleming <mjf (a] NetBSD.org> 651 Scope: kernel and userland 652 Notes: This branch will move away from the static device nodes that 653 are created with MAKEDEV scripts and allow nodes to be created 654 and removed dynamically as devices are attached and detached 655 from the machine. 656 657 Branch: mjf-ufs-trans 658 Description: file system transactions for ufs 659 Status: Active 660 Start Date: 12 March 2007 661 End Date: 662 Base Tag: mjf-ufs-trans-base 663 Maintainer: Matt Fleming <mjf (a] NetBSD.org> 664 Scope: kernel 665 Notes: 666 667 Branch: nick-net80211-sync 668 Description: sync of net80211 with FreeBSD 669 Status: Dormant 670 Start Date: 21 February 2008 671 End Date: 672 Base Tag: nick-net80211-base 673 Maintainer: Nick Hudson <skrll (a] NetBSD.org> 674 Scope: sys/ 675 Notes: Sync'ing net80211 with FreeBSD and drivers update. The branch is 676 currently only the kernel, but will likely extend to some userland 677 areas. 678 679 Branch: pkgviews 680 Description: package views, enabling multiple conflicting packages to co-exist 681 Status: Active 682 Start Date: 22 July 2002 683 End Date: 684 Base Tag: pkgviews 685 Maintainer: Alistair Crooks <agc (a] NetBSD.org> 686 Scope: pkgsrc, basesrc/usr.sbin/pkg_install 687 Notes: A more flexible infrastructure for third-party packages by 688 allowing multiple conflicting packages and versions to co-exist 689 within the same tree 690 691 Branch: phil-wifi 692 Description: Refresh WiFi code from FreeBSD 693 Status: Abandoned 694 Start Date: 2018-06-28 695 End Date: - 696 Base Tag: phil-wifi-base 697 Maintainer: phil, martin 698 Scope: src 699 Notes: This branch has been superseeded by the topic 'wifi' 700 in the src-draft mercurial repository. 701 See https://wiki.netbsd.org/Wifi_renewal_on_hg/ 702 703 Branch: rmind-smpnet 704 Description: MP safe network stack (milestone 1): IPv4, UDP and ICMP 705 Status: Active 706 Start Date: 17 July 2013 707 End Date: 708 Base Tag: rmind-smpnet-base 709 Maintainer: Mindaugas Rasiukevicius <rmind (a] netbsd.org> 710 Scope: Kernel: src/sys (src/common is tagged but not branched) 711 Notes: Goals: 712 713 - Improve the abstraction of PCB and other interfaces. 714 - Add PCB and route cache locking, adjust socket locking. 715 - Rework IPv4, UDP and ICMP paths to be MP safe. 716 - Switch UDP sockets to a separate lock, test and benchmark. 717 718 Branch: rpaulo-netinet-merge-pcb 719 Description: merge in6pcb with inpcb 720 Status: Dormant 721 Start Date: Wed Feb 01 2006 722 End Date: 723 Base Tag: rpaulo-netinet-merge-pcb-base 724 Maintainer: Rui Paulo <rpaulo (a] NetBSD.org> 725 Scope: src/sys 726 Notes: No longer active due to the lack of time. If you plan to 727 continue this branch, sys/netinet/in_pcb.h already contains 728 the proposed structure layout (which was roughly discussed 729 in the tech-net mailing list). 730 I also defined INP_*() macros to mimicate FreeBSD's inpcb 731 locking style, but currently they do nothing and are not 732 yet called at the correct places (needs discussion about 733 kernel fine-grained locking). 734 To continue this branch, one needs to read all the relevant 735 inpcb/in6pcb source files and change the function names, 736 structure names, structure fields according to the new 737 layout (in6pcb is gone). 738 Don't try to build a kernel from this branch because it won't 739 work. The missing pieces required to do a complete build 740 were not committed because they were incomplete and generated 741 panics. 742 You shouldn't need to worry about KAME syncs because 743 they did most of them by now. 744 After the work is done, you are required to test the branch 745 (before the merge to -current) with an interop IPv6 test. 746 More info at: http://www.tahi.org/ 747 748 Branch: thorpej-cfargs 749 Description: Clean up how arguments are passed to various autoconfiguration 750 routines. 751 Status: Merged 752 Start Date: Sat March 20 2021 753 End Date: Sat April 24 2021 754 Base Tag: thorpej-cfargs-base 755 Maintainer: Jason Thorpe <thorpej (a] netbsd.org> 756 Scope: src/sys 757 Notes: 758 759 Branch: thorpej-cfargs2 760 Description: Address complaints regarding the use of variadic arguments in 761 thorpej-cfargs. 762 Status: Merged 763 Start Date: Sun Aug 1 2021 764 End Date: Sat Aug 7 2021 765 Base Tag: thorpej-cfargs2-base 766 Maintainer: Jason Thorpe <thorpej (a] netbsd.org> 767 Scope: src/sys 768 Notes: 769 770 Branch: thorpej-futex 771 Description: Overhaul of futex operations to fix thread priority issues 772 Status: Partially merged 773 Start Date: Sun Nov 1 2020 774 End Date: Sun Aug 19 2021 775 Base Tag: thorpej-futex-base 776 Maintainer: Jason Thorpe <thorpej (a] netbsd.org> 777 Scope: src/sys src/tests/lib/libc/sys src/distrib/sets/lists 778 Notes: Normal futex operations pass the test suite, but there are 779 issues with Linux compatibility currently, that need to be 780 addressed before merging. Also includes new NetBSD extensions 781 to the futex interface to support reader/writer locks. Those 782 changes can be discounted in favor of fixing the standard 783 futex operations with respect to Linux compatibility. 784 Also includes implementations of eventfd and timerfd, as 785 well as some additional improvements to COMPAT_LINUX{,32}. 786 Branch was partially merged, with follow-ups to take place 787 on thorpej-futex2. 788 789 Branch: thorpej-futex2 790 Description: Overhaul of futex operations to fix thread priority issues 791 Status: Active 792 Start Date: Thu Aug 5 2021 793 End Date: 794 Base Tag: thorpej-futex2-base 795 Maintainer: Jason Thorpe <thorpej (a] netbsd.org> 796 Scope: src/sys src/tests/lib/libc/sys 797 Notes: Re-based version of thorpej-futex that includes ONLY 798 the original futex priority issue fixes. The other 799 changes in thorpej-futex are still maintained on that 800 branch. 801 802 Branch: thorpej-i2c-spi-conf 803 Description: Improve device tree-based I2C and SPI enumeration. 804 Status: Abandoned 805 Start Date: Sun April 25, 2021 806 End Date: Sun Aug 8, 2021 807 Base Tag: thorpej-i2c-spi-conf-base 808 Maintainer: Jason Thorpe <thorpej (a] netbsd.org> 809 Scope: src/sys 810 Notes: Changes ported forward to thorpej-i2c-spi-conf2. 811 812 Branch: thorpej-i2c-spi-conf2 813 Description: Improve device tree-based I2C and SPI enumeration. 814 Status: Active 815 Start Date: Sun Aug 8, 2021 816 End Date: 817 Base Tag: thorpej-i2c-spi-conf2-base 818 Maintainer: Jason Thorpe <thorpej (a] netbsd.org> 819 Scope: src/sys 820 Notes: 821 822 Branch: wrstuden-fixsa 823 Description: Fix a number of issues present with Scheduler Activations. 824 Status: Active 825 Start Date: 15 May 2007 826 End Date: 827 Base Tag: wrstuden-fixsa-base 828 Maintainer: Bill Stouder-Studenmund <wrstuden (a] NetBSD.org> 829 Scope: src, though all the interesting stuff is in the kernel 830 or lib/libpthread or maybe gdb. 831 Notes: This branch is based off of the netbsd-4 branch! 832 This branch is intended to stage improvements for the 833 Scheduler Activations system for NetBSD 4. Improvements 834 include not allocating memory while preparing to tsleep(), 835 reducing inappropriate upcall delivery (hopefully also 836 eliminating the need to mlock stacks), and being 837 able to pthread_kill() running threads. At this date, 838 most goals have been achieved. This branch also includes 839 fixes to gdb to support working with threaded apps. 840 841 Branch: wrstuden-revivesa 842 Description: Fix a number of issues present with Scheduler Activations. 843 Status: Active 844 Start Date: 10 May 2008 845 End Date: 846 Base Tag: wrstuden-revivesa-base 847 Maintainer: Bill Stouder-Studenmund <wrstuden (a] NetBSD.org> 848 Scope: src, though all the interesting stuff is in the kernel 849 Notes: This branch is intended to revive Scheduler Activations 850 in -current in the 5.0 era. This branch's main goal is 851 to re-add syscall compatibility so that SA-based libpthread 852 programs can run with a -current kernel. 1:1 threading will 853 remain the NetBSD-default. This branch will re-add necessary 854 upcall support, and will also serve as a chance to clean 855 out cruft that had accumulated in the implementation over 856 time. 857 858 Branch: yamt-kmem 859 Description: 860 - separate kernel va allocation from kernel fault handling. 861 - make kmem_alloc interrupt-safe. 862 Status: Active 863 Start Date: Sun Dec 9 2007 864 End Date: 865 Base Tag: yamt-kmem-base3 866 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org> 867 Scope: src/sys (src/common is tagged but not branched) 868 Notes: 869 todo: 870 - investigate if PMAP_PREFER equivalent can be done 871 with vmem_xalloc. find a tester with hardware for it. 872 - g/c replaced code, including kmapent and malloc. 873 - consider to remove other submaps. eg. mb_map 874 875 Branch: yamt-nfs-mp 876 Description: make nfs client mp-safe 877 Status: Active 878 Start Date: Sun Apr 27 2008 879 End Date: 880 Base Tag: yamt-nfs-mp-base11 881 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org> 882 Scope: src/sys (src/common is tagged but not branched) 883 Notes: 884 885 Branch: yamt-pagecache 886 Description: page cache related changes 887 Status: Active 888 Start Date: Wed Nov 2 2011 889 End Date: 890 Base Tag: yamt-pagecache-base8 891 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org> 892 Scope: src 893 Notes: - maintain object pages in radix tree rather than rb tree. 894 - shrink the size of vm_page. 895 - reduce unnecessary page scan in putpages. esp. when an 896 object has a ton of pages cached but only a few of them 897 are dirty. 898 - reduce the number of pmap operations by tracking page 899 dirtiness more precisely in uvm layer. 900 - fix nfs commit range tracking. 901 - fix nfs write clustering. XXX hack 902 - fix A->O loaning 903 - write radixtree(9) man page 904 905 TODO: 906 - benchmark 907 - test 908 - make the write clustering fix less kludgy 909 - fix or disable the ad-hoc per-cpu statistic 910 - disable A->O loan as its benefit is unclear at best 911 912 tested: i386, amd64, nfs, ffs 913 914 have good chances to be broken: lfs, sparc64, hp700 915 916 the following is kernel build test results. 917 most of NG seem unrelated to the changes in the branch. 918 919 acorn26 GENERIC OK 920 acorn32 GENERIC OK 921 algor P6032 NG 922 alpha GENERIC OK 923 alpha GENERIC.MP OK 924 amd64 GENERIC OK 925 amd64 XEN3_DOM0 OK 926 amd64 XEN3_DOMU OK 927 amiga GENERIC OK 928 amigappc GENERIC OK 929 arc GENERIC OK 930 atari MILAN-PCIIDE OK 931 bebox GENERIC OK 932 cats GENERIC OK 933 cesfic GENERIC OK 934 cobalt GENERIC OK 935 dreamcast GENERIC NG 936 emips GENERIC OK 937 evbarm NSLU2 NG 938 evbarm TS7200 NG 939 evbmips P6032 NG 940 evbmips MALTA NG 941 evbppc WALNUT NG 942 evbppc EXPLORA451 NG 943 evbppc PMPPC NG 944 evbsh3 COMPUTEXEVB OK 945 ews4800mips GENERIC OK 946 hp300 GENERIC OK 947 hp700 GENERIC OK 948 hpcarm JORNADA720 OK 949 hpcarm JORNADA728 OK 950 hpcmips GENERIC OK 951 hpcsh GENERIC OK 952 hpcsh HPW650PA OK 953 i386 MONOLITHIC OK 954 i386 GENERIC OK 955 i386 XEN3_DOM0 OK 956 i386 XEN3_DOMU OK 957 i386 ALL NG 958 ia64 GENERIC OK 959 ia64 GENERIC.SKI NG 960 ibmnws GENERIC OK 961 iyonix GENERIC NG 962 landisk GENERIC OK 963 luna68k GENERIC OK 964 mac68k GENERIC OK 965 macppc GENERIC OK 966 macppc GENERIC.MP OK 967 mipsco GENERIC OK 968 mmeye GENERIC OK 969 mvme68k GENERIC OK 970 mvmeppc GENERIC OK 971 netwinder GENERIC NG 972 news68k GENERIC OK 973 newsmips GENERIC OK 974 next68k GENERIC OK 975 ofppc GENERIC OK 976 ofppc GENERIC.MP NG 977 pmax GENERIC OK 978 prep GENERIC OK 979 rs6000 GENERIC NG 980 sandpoint GENERIC OK 981 sbmips GENERIC NG 982 sbmips GENERIC.MP NG 983 sgimips GENERIC32_IP3x OK 984 shark GENERIC NG 985 sparc GENERIC OK 986 sparc GENERIC.MP OK 987 sparc64 GENERIC OK 988 sun2 GENERIC OK 989 sun3 GENERIC OK 990 usermode GENERIC NG 991 vax GENERIC OK 992 vax GENERIC.MP OK 993 x68k GENERIC OK 994 zaurus GENERIC NG 995 996 Branch: reinoud-bufcleanup 997 Description: implement and evaluate struct buf usage cleanup strategies. 998 Ideas currently in mind (preference for b): 999 a) 1000 1. use of bio_ops per buffer. 1001 2. allow chaining/overloading of functions in bio_ops 1002 and provide some private context. 1003 3. extend the bio_ops with commonly used functionality 1004 like pending action counting, custom context passing, 1005 last minute processing of buffer data, buffer cache 1006 etc. 1007 4. investigate the use of the kcont() 1008 continuation-passing framework for async io 1009 completion notification for bufs 1010 ... 1011 b) 1012 1. all sequencing use of B_CALL replaced by 1013 device-threads, if possible generic code around BUFQ 1014 2. possibly use kcont() for async IO finished signaling 1015 3. counter of pending and queued actions requestable 1016 by IOCTL interface? 1017 4. implement `last minute buffer fixup' calls and maybe 1018 even finished I/O calls as vnode operations 1019 ... 1020 Status: Active 1021 Start Date: Thu Mar 15 2007 1022 End Date: 1023 Base Tag: reinoud-bufcleanup-base 1024 Maintainer: Reinoud Zandijk <reinoud (a] NetBSD.org> 1025 Scope: src/sys and src/common 1026 Notes: Used as experiment sandbox and if successful hopefully one day 1027 to be integrated. 1028 1029 1030 ######################################################################## 1031 # Individual developers' branches (Terminated): 1032 ######################################################################## 1033 1034 Branch: pgoyette-compat 1035 Description: clean-up of compat module 1036 Status: Merged 1037 Start Date: Tues Mar 6, 2018 1038 End Date: Sun Jan 27, 2019 1039 Base Tag: pgoyette-compat-base 1040 Maintainer: pgoyette 1041 Scope: src/ 1042 Notes: 1043 1044 Branch: prg-localcount2 1045 Description: Implement localcount reference counting as proposed by 1046 riastradh@ - supersedes abandonded pgoyette-localcount 1047 Status: Suspended - core of the changes were merged to HEAD 1048 Start Date: Wed Apr 26 2017 1049 End Date: 1050 Base Tag: prg-localcount2-base 1051 Maintainer: pgoyette 1052 Scope: src/sys/ 1053 Notes: 1054 1055 Branch: pgoyette-localcount 1056 Description: Implement localcount reference counting as proposed by 1057 riastradh@ 1058 Status: Terminated 1059 Start Date: Fri Jul 15 2016 1060 End Date: Wed Apr 26 2017 1061 Base Tag: pgoyette-localcount-base 1062 Maintainer: pgoyette 1063 Scope: src/sys/ 1064 Notes: Abandoned - there seems to have been some CVS "pilot 1065 error during one of the sync-with-head and now there 1066 are an unknown number of commits missing from an 1067 unknown number of files from an unknown time period. 1068 The work will be salvaged as much as possible, and 1069 applied to a new clean branch. 1070 1071 Branch: bouyer-scsipi 1072 Description: Integration of atapi support 1073 Status: Terminated 1074 Start Date: 1075 End Date: 1076 Base Tag: 1077 Maintainer: Manuel Bouyer <bouyer (a] NetBSD.org> 1078 Scope: kernel 1079 Notes: Superseded by thorpej_scsipi 1080 1081 Branch: bouyer-xen2 1082 Description: update xen port to xen 2.0, with support for domain0 operations 1083 Status: Terminated 1084 Start Date: Dec 13 2004 1085 End Date: Mar 10 2005 1086 Base Tag: netbsd-2-base 1087 Maintainer: Manuel Bouyer <bouyer (a] NetBSD.org> 1088 Scope: src/sys/arch/xen 1089 Notes: 1090 1091 Branch: bouyer-xenamd64 1092 Description: add amd64 support to Xen and rework some parts to share more code between Xen and others 1093 Status: Terminated 1094 Start Date: 18 Oct 2007 1095 End Date: 22 Nov 2007 1096 Base Tag: bouyer-xenamd64-base 1097 Maintainer: Manuel Bouyer <bouyer (a] NetBSD.org> 1098 Scope: kernel 1099 Notes: 1100 1101 Branch: bouyer-xeni386 1102 Description: switch xen on i386 to the x86 pmap and the xen/x86/x86_xpmap.c bootstrap, and add i386 PAE support 1103 Status: Terminated 1104 Start Date: 10 Dec 2007 1105 End Date: 23 Jan 2008 1106 Base Tag: bouyer-xeni386-base 1107 Maintainer: Manuel Bouyer <bouyer (a] NetBSD.org> 1108 Scope: kernel 1109 Notes: 1110 1111 Branch: bouyer-quota2 1112 Description: modernise disk quotas 1113 Status: Terminated 1114 Start Date: Thu Jan 20 2011 1115 End Date: March 06 2011 1116 Base Tag: bouyer-quota2-base 1117 Maintainer: Manuel Bouyer <bouyer (a] NetBSD.org> 1118 Scope: src/ 1119 Notes: 1120 1121 Branch: chap-midi 1122 Description: Renovation of MIDI support 1123 Status: Terminated; merged to -current 1124 Start Date: 19 May 2006 1125 End Date: 30 Jun 2006 1126 Base Tag: chap-midi-base 1127 Maintainer: Chapman Flack <chap (a] NetBSD.org> 1128 Scope: sys, share/man, usr.bin 1129 Notes: 1130 1131 Branch: chs-ubc 1132 Description: Unified Buffer Cache 1133 Status: Terminated 1134 Start Date: 1135 End Date: 1136 Base Tag: chs-ubc-base 1137 Maintainer: Chuck Silvers <chs (a] NetBSD.org> 1138 Scope: kernel 1139 Notes: 1140 1141 Branch: chs-ubc2 1142 Description: Unified Buffer Cache 1143 Status: Terminated; merged to -current 1144 Start Date: 1145 End Date: 1146 Base Tag: chs-ubc2-base, chs-ubc2-newbase 1147 Maintainer: Chuck Silvers <chs (a] NetBSD.org> 1148 Scope: kernel 1149 Notes: 1150 1151 Branch: cjs-build-against-obj-dir 1152 Description: ? 1153 Status: ? 1154 Start Date: 1155 End Date: 1156 Base Tag: 1157 Maintainer: Curt Sampson <cjs (a] NetBSD.org> 1158 Scope: Entire tree. 1159 Notes: 1160 1161 Branch: cube-autoconf 1162 Description: Renovate autoconf(9) API 1163 Status: Terminated; abandoned 1164 Start Date: 11 Dec 2007 1165 End Date: 1166 Base Tag: cube-autoconf-base 1167 Maintainer: Quentin Garnier <cube (a] NetBSD.org> 1168 Scope: kernel usr.bin/config (and some other userland bits) 1169 Notes: Address a number of issues the current autoconf(9) API has. 1170 1171 Branch: eeh-paddr_t 1172 Description: use separate types for virtual vs. physical addresses 1173 Status: Terminated; merged to -current 1174 Start Date: 1175 End Date: 1176 Base Tag: eeh-paddr_t-base 1177 Maintainer: Eduardo Horvath <eeh (a] NetBSD.org> 1178 Scope: kernel 1179 Notes: This is needed to support 32-bit kernels on sparc64. 1180 1181 Branch: elad-kernelauth 1182 Description: Native NetBSD implementation of Apple's kernel authorization 1183 based on TN2127. This is a "clean-room" implementation to 1184 avoid any licensing issues. 1185 Status: Terminated; merged to -current 1186 Start Date: Tue Mar 7 2006 1187 End Date: Mon May 15 2006 1188 Base Tag: elad-kernelauth-base 1189 Maintainer: Elad Efrat <elad (a] NetBSD.org> 1190 Scope: src/sys, src/share/man/man9/Makefile, 1191 src/share/man/man9/kauth.h, src/distrib/sets/lists/comp/mi 1192 Notes: 1193 1194 Branch: fvdl-softdep 1195 Description: FFS soft dependencies 1196 Status: Terminated; merged to -current 1197 Start Date: 1198 End Date: 1199 Base Tag: fvdl-softdep-base 1200 Maintainer: Frank van der Linden <fvdl (a] NetBSD.org> 1201 Scope: kernel 1202 Notes: 1203 1204 Branch: gehenna-devsw 1205 Description: auto-generation of devsw table 1206 Status: Terminated 1207 Start Date: 16 May 2002 1208 End Date: 6 Sep 2002 1209 Base Tag: gehenna-devsw-base 1210 Maintainer: MAEKAWA Masahide <gehenna (a] NetBSD.org> 1211 Scope: syssrc 1212 Notes: The goal is to get rid of the existing device switch tables in 1213 port-dependent conf.c and to generate them dynamically by 1214 config(8). 1215 1216 Branch: haad-dm 1217 Description: Add support for LVM to NetBSD 1218 Status: Terminated; merged with -current 1219 Start Date: 7 July 2008 1220 End Date: 19 December 2008 1221 Base Tag: haad-dm-base 1222 Maintainer: Adam Hamsik <haad (a] NetBSD.org> 1223 Scope: kernel 1224 Notes: LVM support is based on Linux lvm2tools, 1225 libdevmapper library and NetBSD device-mapper 1226 driver. 1227 1228 Branch: is-newarp 1229 Description: ARP for non-Ethernet 1230 Status: Terminated; merged before NetBSD 1.3 1231 Start Date: 1996/10/13 1232 End Date: 1997/03/15 1233 Base Tag: is-newarp-base 1234 Maintainer: Ignatios Souvatzis <is (a] NetBSD.org> 1235 Scope: kernel 1236 Notes: 1237 1238 Branch: isaki-audio2 1239 Description: Overhaul audio subsystem 1240 Status: Terminated; merged to -current 1241 Start Date: 21 Apr 2019 1242 End Date: 08 May 2019 1243 Base Tag: isaki-audio2-base 1244 Maintainer: Tetsuya Isaki <isaki (a] NetBSD.org> 1245 Scope: src/sys 1246 Notes: Rework audio subsystem, including multiple streaming, 1247 filter pipeline. 1248 1249 Branch: jmcneill-pm 1250 Description: Power management framework overhaul, ACPI improvements 1251 Status: Terminated; merged before NetBSD 5.0 1252 Start Date: 3 Aug 2007 1253 End Date: 9 Dec 2007 1254 Base Tag: jmcneill-pm-base 1255 Maintainer: Jared D. McNeill <jmcneill (a] NetBSD.org> 1256 Scope: kernel 1257 Notes: 1258 1259 Branch: jmcneill-audiomp3 1260 Description: Add MP locking to the audio drivers 1261 Status: Terminated; merged before NetBSD 6.0 1262 Start Date: 19 Nov 2011 1263 End Date: 23 Nov 2011 1264 Base Tag: jmcneill-audiomp3-base 1265 Maintainer: Jared D. McNeill <jmcneill (a] NetBSD.org> 1266 Scope: kernel 1267 Notes: Resurrect ad-audiomp2, make the audio drivers MP safe. 1268 1269 Branch: kenh-if-detach 1270 Description: Interface detach support. 1271 Status: ? 1272 Start Date: 1273 End Date: 1274 Base Tag: kenh-if-detach-base 1275 Maintainer: Ken Hornstein <kenh (a] NetBSD.org> 1276 Scope: kernel 1277 Notes: 1278 1279 Branch: kent-audio1 1280 Description: Audio converter pipeline 1281 Status: Terminated; merged to -current 1282 Start Date: Tue Dec 7 2004 1283 End Date: Tue Jan 11 2005 1284 Base Tag: kent-audio1-base 1285 Maintainer: TAMURA Kent <kent (a] NetBSD.org> 1286 Scope: kernel (audio device drivers) 1287 Notes: http://mail-index.netbsd.org/tech-kern/2004/12/03/0007.html 1288 Please consult with the maintainer before committing 1289 to this branch. 1290 1291 Branch: kqueue 1292 Description: kqueue kernel event notification mechanism (from FreeBSD) 1293 Status: Terminated; merged to -current 1294 Start Date: Tue Jul 10 23:08:38 EST 2001 1295 End Date: Tue Oct 24 09:14:14 GMT 2002 1296 Base Tag: kqueue-base 1297 Maintainer: Jaromir Dolecek <jdolecek (a] NetBSD.org> 1298 Scope: kernel, libc/sys, share/man/man9, usr.bin/fstat 1299 Notes: Integration of FreeBSD's kqueue(2) mechanism, with various 1300 local internal changes to better suit NetBSD, and 1301 enhancements such as looking up filters by name or 1302 number, and dynamic registration of "user" filters. 1303 1304 Branch: ktrace-lwp 1305 Description: ktrace support for lwp ids. 1306 Status: Terminated; merged to -current 1307 Start Date: Wed Jul 2 15:27:30 UTC 2003 1308 End Date: Sun Dec 11 12:25:29 UTC 2005 1309 Base Tag: ktrace-lwp-base 1310 Maintainer: Darren Reed <darrenr (a] NetBSD.org> 1311 Scope: sys 1312 Notes: 1313 1314 Branch: marc-pcmcia 1315 Description: PCMCIA support 1316 Status: Terminated; merged to -current 1317 Start Date: 1318 End Date: 1319 Base Tag: marc-pcmcia-base, marc-pcmcia-bp 1320 Maintainer: Marc Horowitz <marc (a] NetBSD.org> 1321 Scope: kernel 1322 Notes: 1323 1324 Branch: matt-armv6 1325 Description: Rototill the arm code to support features present in the 1326 v6 of the ARM Architecture. Additionally, clean up things 1327 along the way to use common practices. 1328 Status: Terminated; merged to -current 1329 Start Date: 2007-08-27 1330 End Date: 2008-04-27 1331 Base Tag: matt-armv6-base 1332 Maintainer: Matt Thomas <matt (a] NetBSD.org> 1333 Scope: kernel & userland 1334 Notes: 1335 1336 Branch: minoura_x68k_bus_h 1337 Description: bus_space(9) and bus_dma(9) implementation for x68k 1338 Status: Terminated; merged to -current 1339 Start Date: 23 Dec 1998 1340 End Date: 16 Mar 1999 1341 Base Tag: minoura_x68k_bus_h-base 1342 Maintainer: Minoura Makoto <minoura (a] NetBSD.org> 1343 Scope: sys/arch/x68k 1344 Notes: 1345 1346 Branch: minoura-xpg4dl 1347 Description: Citrus Project locale subsystem 1348 Status: Terminated; (partly) merged to -current 1349 Start Date: 28 March 2000 1350 End Date: 1351 Base Tag: minoura-xpg4dl-base 1352 Maintainer: Minoura Makoto <minoura (a] NetBSD.org> 1353 Scope: basesrc, syssrc, sharesrc 1354 Notes: Citrus Project is developing dynamically-loadable, codeset- 1355 independent locale subsystem. Part of the implementation 1356 (LC_CTYPE) called XPG4DL is now integrated to -current. 1357 1358 Branch: mjf-devfs 1359 Description: device file system supporting dynamic device nodes 1360 Status: Terminated 1361 Start Date: 12 November 2007 1362 End Date: 21 February 2008 1363 Base Tag: mjf-devfs-base 1364 Maintainer: Matt Fleming <mjf (a] NetBSD.org> 1365 Scope: kernel and userland 1366 Notes: This branch will move away from the static device nodes that 1367 are created with MAKEDEV scripts and allow nodes to be created 1368 and removed dynamically as devices are attached and detached 1369 from the machine. 1370 1371 Branch: mrg-vm-swap 1372 Description: dynamic swap allocation, swap-to-files support 1373 Status: Terminated; abandoned for mrg-vm-swap2 1374 Start Date: 12 February 1997 1375 End Date: 15 March 1997 1376 Base Tag: [none] 1377 Maintainer: Matthew R. Green <mrg (a] NetBSD.org> 1378 Scope: kernel 1379 Notes: 1380 1381 Branch: mrg-vm-swap2 1382 Description: dynamic swap allocation, swap-to-files support 1383 Status: Terminated; merged to -current 1384 Start Date: 4 May 1997 1385 End Date: 12 June 1997 1386 Base Tag: mrg-vm-swap2-base 1387 Maintainer: Matthew R. Green <mrg (a] NetBSD.org> 1388 Scope: kernel 1389 Notes: 1390 1391 Branch: nathanw_sa 1392 Description: Scheduler activations 1393 Status: Terminated; merged to -current 1394 Start Date: 5 March 2001 1395 End Date: 18 January 2003 1396 Base Tag: nathanw_sa_base 1397 Maintainer: Nathan Williams <nathanw (a] NetBSD.org> 1398 Scope: kernel, libc, libkvm, libpthread, libpthread_dbg, include, 1399 bin/ps usr.bin/systat usr.bin/top usr.bin/w 1400 gnu/dist/toolchain/gdb gnu/usr.bin/gdb 1401 Notes: The idea of scheduler activations is described in the 1402 classic paper by Anderson et al., in ACM Transactions 1403 a on Computer Systems volume 10 issue 1 (1992),which 1404 can be found at 1405 http://www.acm.org/pubs/citations/journals/tocs/1992-10-1/p53-anderson/ 1406 Many ideas in the implementation are based on the 1407 implementation of scheduler activations added to Mach 1408 3.0 and described by Davis et al. in the University of 1409 Washington CS tech report 92-08-93, which can be found 1410 at 1411 ftp://ftp.cs.washington.edu/tr/1992/08/UW-CSE-92-08-03.PS.Z 1412 1413 My USENIX paper on the subject can be found at 1414 http://web.mit.edu/nathanw/www/usenix/ 1415 1416 Please consult with the maintainer before committing 1417 to this branch. 1418 Other tags starting with nathanw_sa reserved for 1419 branch management and are not guaranteed to be stable. 1420 1421 Trunk tagged with "nathanw_sa_before_merge" prior to 1422 merging branch down to trunk. Branch tagged with 1423 "nathanw_sa_end" to indicate the ending revision of 1424 the branch. 1425 1426 Branch: newlock 1427 Description: New locking primitives, based on Solaris's 1428 Status: Terminated 1429 Start Date: March 9, 2002 1430 End Date: February 12, 2007 1431 Base Tag: newlock-base 1432 Maintainer: Jason R. Thorpe <thorpej (a] NetBSD.org> 1433 Scope: Kernel 1434 Notes: The goal is to replace the existing lockmgr() and 1435 simple_lock() based locking mechanisms with the 1436 primitives found in Solaris: mutexes and rwlocks. 1437 Superseded by the newlock2 branch. 1438 1439 Branch: newlock2 1440 Description: New locking primitives, based on Solaris's 1441 Status: Terminated 1442 Start Date: September 9, 2006 1443 End Date: February 12, 2007 1444 Base Tag: newlock2-base 1445 Maintainer: Andrew Doran <ad (a] NetBSD.org> 1446 Scope: Kernel 1447 Notes: As per the newlock branch, however given the amount of time 1448 the original branch has lain dormant, a new one has been 1449 created. Goals: 1450 - Implement new locking primitives on most-used ports. 1451 - Minor locking improvements. 1452 - Remove spinlockmgr(). 1453 1454 Branch: nick-csl-alignment 1455 Description: Provide correctly aligned __cpu_simple_lock_t for hppa 1456 Status: Terminated; merged to -current 1457 Start Date: 2007-07-18 1458 End Date: 1459 Base Tag: nick-csl-alignment-base5 1460 Maintainer: Nick Hudson <skrll (a] NetBSD.org> 1461 Scope: sys, lib/libpthread, lib/libpthread_dbg 1462 Notes: 1463 1464 Branch: perseant-exfatfs 1465 Description: exFAT filesystem development 1466 Status: Active 1467 Start Date: 29 June 2024 1468 End Date: 1469 Base Tag: perseant-exfatfs-base 1470 Maintainer: Konrad Schroder <perseant (a] NetBSD.org> 1471 Scope: kernel & userland 1472 Notes: 1473 1474 Branch: perseant-iso10646 1475 Description: Implement __STDC_ISO_10646__. 1476 Status: Dormant 1477 Start Date: 14 July 2017 1478 End Date: 1479 Base Tag: perseant-iso10646-base 1480 Maintainer: Konrad Schroder <perseant (a] NetBSD.org> 1481 Scope: lib/libc/citrus lib/libc/locale usr.bin/localedef 1482 Notes: 1483 1484 Branch: perseant-lfsv2 1485 Description: LFS incompatible on-disk data structure changes 1486 Status: Terminated 1487 Start Date: 27 June 2001 1488 End Date: 16 July 2001 1489 Base Tag: perseant-lfsv2-base 1490 Maintainer: Konrad Schroder <perseant (a] NetBSD.org> 1491 Scope: basesrc/{sbin/*lfs,libexec/lfs_cleanerd,usr.sbin/dumplfs}, syssrc/sys/ufs 1492 Notes: This branch should be short-lived, I expect to merge as soon 1493 as the data structures required for unremove are in and tested. 1494 1495 Branch: ppcoea-renovation 1496 Description: General renovation and cleanup of all OEA PowerPC ports. 1497 Status: Terminated; merged to -current 1498 Start Date: 30 April 2007 1499 End Date: 15 October 2007 1500 Base Tag: ppcoea-renovation-base 1501 Maintainer: Tim Rightnour <garbled (a] netbsd.org> 1502 Scope: src/sys/arch 1503 Notes: This branch is for a general cleanup of all OEA-based PowerPC 1504 ports. OEA (Operating Environment Architecture) PowerPC refers 1505 to the 601, 603, 604, and similar chips. Specifically, not the 1506 403/401 and other embedded chips. The general concept is to get 1507 them all compiling, and sharing as much code as possible. All 1508 developers are welcome to commit to this branch. 1509 1510 Branch: thorpej-devvp 1511 Description: replace dev_t with struct vnode * in devsw entry points 1512 Status: Terminated 1513 Start Date: Sep 6 2001 1514 End Date: ??? 1515 Base Tag: thorpej-devvp-base 1516 Maintainer: Jason Thorpe <thorpej (a] NetBSD.org> 1517 Scope: syssrc 1518 Notes: Kernels built from this branch are not expected 1519 to function correctly at this time. 1520 1521 Ports known to compile on this branch: 1522 alpha 1523 i386 1524 1525 Branch: peter-altq 1526 Description: New ALTQ framework: 1527 - sync with KAME sources 1528 - share mtag/name mapping functions 1529 - separate altq + pf attachment 1530 Status: Terminated; merged to -current 1531 Start Date: March 16, 2006 1532 End Date: October 12, 2006 1533 Base Tag: peter-altq-base 1534 Maintainer: Peter Postma <peter (a] NetBSD.org>, 1535 Martin Husemann <martin (a] NetBSD.org>, 1536 Matthias Scheler <tron (a] NetBSD.org> 1537 Scope: dist/pf dist/ipf distrib/sets/lists sys usr.sbin/altq 1538 Notes: Only the first item in the description was finished 1539 in this branch. 1540 1541 Branch: rmind-uvmplock 1542 Description: Reorganize locking in UVM and improve x86 pmap(9) 1543 Status: Terminated; merged to -current 1544 Start Date: 15 March 2010 1545 End Date: 12 June 2011 1546 Base Tag: rmind-uvmplock-base 1547 Maintainer: Mindaugas Rasiukevicius <rmind (a] netbsd.org> 1548 Scope: Kernel 1549 Notes: Goals: 1550 1551 - Reorganize locking in UVM and serialize pmap(9) operations 1552 on same page(s). New lock order: [vmpage-lock] -> pmap-lock. 1553 Based on the patch from ad@. 1554 - Simplify locking in pmap(9) modules by removing P->V locking. 1555 - Use mutex_obj(9) on vmobjlock (and thus vnode_t::v_interlock) 1556 to share locks among UVM objects where necessary. 1557 - Rewrite and optimize x86 TLB shootdown code. 1558 - Unify /dev/mem et al in MI code and provide required locking. 1559 1560 Future work: 1561 1562 - Optimize pmap_remove() with tracking in struct vm_map_entry. 1563 1564 Branch: sommerfeld_i386mp_1 1565 Description: Multiprocessor support for i386 using Intel MP BIOS. 1566 Status: Terminated; merged to -current 1567 Start Date: 21 Feb 2000 1568 End Date: 01 Oct 2002 1569 Base Tag: sommerfeld_i386mpbase_1 1570 Maintainer: Bill Sommerfeld <sommerfeld (a] NetBSD.org> 1571 Scope: sys/arch/i386 1572 Notes: 1573 Code committed to the branch has booted to multiuser 1574 on at least one system. 1575 1576 Not guaranteed to compile against mainline since -current 1577 may have changed incompatibly with the last branch update; 1578 use "cvs update -D" to roll-back the rest of the tree to match. 1579 1580 Please get explicit permission from the maintainer 1581 before each commit, or your changes will be backed out. 1582 Other tags starting with sommerfeld_ are private to 1583 the developer and are guaranteed to be unstable. 1584 Only the maintainer should move tags. 1585 1586 Note that this branch uses a DIFFERENT scheme for 1587 syncing with the mainline. the maintainer uses some private 1588 scripts for keeping them in sync; if you make commits 1589 to the branch to "resynchronize" things, you'll 1590 probably do it wrong; instead, ask the maintainer to 1591 resynchronize things. 1592 1593 See sys/arch/i386/TODO on the branch for a list of known 1594 issues with the branch. 1595 1596 Branch: thorpej-mips-cache 1597 Description: overhaul MIPS cache support code 1598 Status: Terminated; merged to -current 1599 Start Date: Oct 23 2001 1600 End Date: Nov 14 2001 1601 Base Tag: thorpej-mips-cache-base 1602 Scope: syssrc 1603 Notes: This branch needs more debugging, testing, and more 1604 ports need to be converted to the new world order. 1605 1606 The following processors have had cache ops 1607 written: 1608 1609 * R2000/R3000 (cache_r3k) -- light testing, 1610 needs to be beat on a lot more to make 1611 sure it's working. 1612 1613 * R4000/R4400 (cache_r4k) -- mhitch (a] NetBSD.org 1614 tracked down a bug, which has been fixed. 1615 1616 Confirmed working on R4000-with-L2. 1617 1618 Confirmed working on R4400-no-L2 and 1619 R4400-with-L2. 1620 1621 * R4600/R5000 (cache_r5k) -- shin (a] NetBSD.org 1622 has committed fixes to this code. 1623 1624 Confirmed working on R4600 v2 (SGI IP-22 with 1625 no SysAD L2 cache). 1626 1627 Confirmed working on RM5260 (Algorithmics P-5064). 1628 1629 * TX39 (cache_tx39) -- uch (a] NetBSD.org has 1630 committed fixes to this code. Awaiting 1631 confirmation that it is working properly. 1632 1633 * R5900 (cache_r5900) -- uch (a] NetBSD.org has 1634 written this code and tested it on a 1635 PlayStation 2. 1636 1637 The following ports have been updated to compile (and 1638 use optimized-for-processor bus_dma routines). Those 1639 that have been tested and work are marked with [WORKING]. 1640 1641 * algor [WORKING] 1642 1643 * arc [WORKING] 1644 1645 * pmax [WORKING] 1646 1647 * playstation2 [WORKING] 1648 Needs optimized bus_dmamap_sync(). 1649 1650 * hpcmips [need verification that this is working] 1651 Needs optimized bus_dmamap_sync(). 1652 1653 * sgimips [WORKING] 1654 Needs optimized bus_dmamap_sync(). 1655 1656 * cobalt [need testing] 1657 1658 * mipsco [need testing] 1659 1660 * newsmips [need testing] 1661 1662 Branch: thorpej_scsipi 1663 Description: SCSI/ATAPI midlayer rewrite. 1664 Status: Terminated; merged to -current 1665 Start Date: 1666 End Date: Apr 25 2001 1667 Base Tag: thorpej_scsipi_base, thorpej_scsipi_nbase 1668 Maintainer: Manuel Bouyer <bouyer (a] NetBSD.org>, 1669 Jason Thorpe <thorpej (a] NetBSD.org> 1670 Scope: syssrc 1671 Notes: When a change from -current is pulled up please move the 1672 thorpej_scsipi_base tag to the revision you're syncing with. 1673 thorpej_scsipi_nbase is private to maintainer (only 1674 used when syncing the whole branch with HEAD). 1675 Just before the merge, syssrc has been tagged with 1676 thorpej_scsipi_beforemerge 1677 1678 Branch: thorpej-signal 1679 Description: ? 1680 Status: ? 1681 Start Date: 1682 End Date: 1683 Base Tag: thorpej-signal-base 1684 Maintainer: Jason Thorpe <thorpej (a] NetBSD.org> 1685 Scope: kernel 1686 Notes: 1687 1688 Branch: thorpej-setroot 1689 Description: ? 1690 Status: Terminated; merged to -current 1691 Start Date: 1692 End Date: 1693 Base Tag: 1694 Maintainer: Jason Thorpe <thorpej (a] NetBSD.org> 1695 Scope: kernel 1696 Notes: 1697 1698 Branch: simonb-timecounters 1699 Description: Port FreeBSD timecounters to NetBSD 1700 Status: Terminated 1701 Start Date: Sat Feb 04 2006 1702 End Date: Wed Jun 07 2006 1703 Base Tag: simonb-timecounters-base 1704 Maintainer: Simon Burge <simonb (a] NetBSD.org>, 1705 Frank Kardel <kardel (a] NetBSD.org> 1706 Scope: sys, sbin/savecore, usr.bin/vmstat, usr.sbin/ntp 1707 Notes: early (partial conversion) commit to -current 1708 ok'ed by core@ on 20060605 for testing and further 1709 simplified conversion 1710 1711 Branch: simonb-wapbl 1712 Description: Wasabi's journaling filesystem support 1713 Status: Terminated; merged to -current 1714 Start Date: Tue Jun 10 2008 1715 End Date: Thu Jul 31 2008 1716 Base Tag: simonb-wapbl-base 1717 Maintainer: Simon Burge <simonb (a] NetBSD.org> 1718 Scope: src/distrib/sets/lists/comp src/distrib/utils/sysinst 1719 src/include 1720 src/sbin/fsck_ffs src/sbin/fsdb src/sbin/mount_ffs 1721 src/sbin/tunefs src/usr.sbin/dumpfs src/sys 1722 Notes: Still has a number of issues: 1723 - Some heavy workload performance issues on SMP machines. 1724 Work around this issue by turning on WAPBL_DEBUG_SERIALIZE 1725 in rev 1.1.2.11 of vfs_wapbl.c. 1726 - Removing large files (sparse only?) takes a long time. 1727 Eg, a file created with 1728 dd if=/dev/zero of=foox bs=1 count=1 seek=11261748520550 1729 takes 0:00.00 to remove on my test box without logging and 1730 0:22.25 to remove with logging. No disk IO during this... 1731 - sysinst should use in-fs logs now, not end-of-partition logs. 1732 1733 Branch: uebayasi-xip 1734 Description: Support eXecute-In-Place (XIP) 1735 Status: Active 1736 Start Date: 8 February 2010 1737 End Date: 1738 Base Tag: uebayasi-xip-base6 (2010-11-15 UTC) 1739 Maintainer: Masao Uebayashi <uebayasi (a] NetBSD.org> 1740 Scope: src/external/gpl3/binutils/usr.sbin/mdsetimage/mdsetimage.8 1741 src/include 1742 src/sbin/mount 1743 src/sbin/mount_ffs 1744 src/share/man/man4 1745 src/share/man/man5/statvfs.5 1746 src/share/man/man9 1747 src/sys/arch 1748 src/sys/common/pmap 1749 src/sys/conf 1750 src/sys/dev/flash.c 1751 src/sys/dev/flashvar.h 1752 src/sys/dev/md.c 1753 src/sys/dev/md.h 1754 src/sys/dev/md_root.c 1755 src/sys/dev/xmd.c 1756 src/sys/kern/vfs_syscalls.c 1757 src/sys/miscfs/genfs/genfs_io.c 1758 src/sys/miscfs/specfs/specdev.h 1759 src/sys/sys 1760 src/sys/ufs/ffs/ffs_vfsops.c 1761 src/sys/uvm 1762 src/usr.sbin/mdsetimage/mdsetimage.8 1763 Notes: Goals: 1764 - Clean up oddities in fault handler 1765 - Add a notion of device page 1766 - Teach XIP vnode VOP_GETPAGES 1767 - Hook XIP mount option 1768 - Teach some pmaps to handle device page 1769 1770 Branch: vmlocking 1771 Description: Make VM and file system framework MP safe 1772 Status: Terminated 1773 Start Date: 13 March 2007 1774 End Date: 4 December 2007 1775 Base Tag: vmlocking-base 1776 Maintainer: Andrew Doran <ad (a] NetBSD.org> 1777 Scope: kernel 1778 Notes: Superseded by vmlocking2 branch. 1779 1780 Branch: vmlocking2 1781 Description: Make VM and file system framework MP safe 1782 Status: Terminated 1783 Start Date: 4 December 2007 1784 End Date: 2 January 2008 1785 Base Tag: vmlocking2-base3 1786 Maintainer: Andrew Doran <ad (a] NetBSD.org> 1787 Scope: kernel 1788 Notes: Goals: 1789 1790 - Make VM system / trap handling MP safe. 1791 - Replace simplelocks with mutexes. 1792 - Make file system framework MP safe. 1793 1794 Status by architecture: 1795 1796 alpha done 1797 i386 done 1798 amd64 done 1799 mips done 1800 sparc need pmap/trap locking changes 1801 sparc64 done 1802 arm done 1803 powerpc done 1804 hppa done 1805 sh3 done 1806 m68k done 1807 xen need pmap/trap locking changes 1808 1809 Remaining MI work to do: 1810 1811 - Check aliased vnode handling. There may be problems. 1812 1813 Remaining problems: 1814 1815 - LFS stalls due to v_numoutput leak. 1816 1817 Branch: wrstuden-devbsize 1818 Description: Modify buffer cache to deal with different devices having 1819 different block sizes. Also DEV_BSIZE would go away. 1820 Status: Terminated 1821 Start Date: Aug or Sept 1999 1822 End Date: 1 Apr 2000 1823 Base tag: wrstuden-devbsize-base 1824 Maintainer: Bill Studenmund <wrstuden (a] NetBSD.org> 1825 Scope: kernel 1826 Notes: No longer active due to lack of time, and introduction 1827 of UBC. In terms of UBC, the primary cache for 1828 file data is the VM cache, which needs to operate 1829 in terms of VM pages. As no existing device has native 1830 pages the same size as our VM pages, there already is 1831 a mapping going on between the VM system and the 1832 underlying blocks. So it would be easier and cleaner 1833 to adjust that to deal w/ different block sizes. 1834 Also with UBC, all i/o is in terms of bytes at an offset 1835 with a certain length, so the exact block size isn't a big 1836 deal. 1837 1838 Any other wrstuden-devbsize tag may (and should) go away. 1839 1840 Branch: yamt-idlelwp 1841 Description: idle lwp, and some changes depending on it. 1842 1843 1. separate context switching and thread scheduling. 1844 (cf. gmcgarry_ctxsw) 1845 2. implement idle lwp. 1846 3. clean up related MD/MI interfaces. 1847 4. make scheduler(s) modular. 1848 1849 Status: Terminated; merged to -current 1850 Start Date: Fri Feb 17 2007 1851 End Date: Thu May 17 2007 1852 Base Tag: yamt-idlelwp-base8 1853 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org> 1854 Scope: src/sys (src/common is tagged but not branched) 1855 Notes: 1856 Status of ports: 1857 alpha [ Done, UP tested, MP not tested ] 1858 i386 [ Done, tested ] 1859 amd64 [ Done, tested ] 1860 mips [ Done, both MIPS1 and MIPS3 tested] 1861 sparc [ Done, UP tested, MP might have 1862 some problem after newlock2 merge ] 1863 sparc64 [ Done, tested ] 1864 arm [ Done, SA1 tested. See PR 36548 ] 1865 macppc/powerpc [ Done, OEA tested ] 1866 hppa [ Done, tested ] 1867 sh3 [ Done, tested ] 1868 vax [ Done, UP tested, MP untested ] 1869 m68k [ Done, tested on several ports ] 1870 ns32k [ broken ] 1871 ia64 [ broken ] 1872 pdp10 [ broken ] 1873 1874 How to adapt a port? 1875 1876 - unify cpu_switch, cpu_exit, cpu_switchto into 1877 a single cpu_switchto. see cpu_switchto.9. 1878 1879 - implement cpu_idle. see cpu_idle.9. 1880 1881 - add a flag argument to cpu_need_resched. 1882 handle RESCHED_IMMED flag, which means "cause a preemption 1883 as soon as possible." eg. in the case of MULTIPROCESSOR, 1884 send an IPI to the target cpu. 1885 1886 - "curlwp == NULL" is not a valid check for idle state anymore. 1887 use "(curlwp->l_flag & LW_IDLE) != 0" instead. curlwp is 1888 almost always non-NULL, with exceptions like early on boot. 1889 1890 - remove idle pcbs. 1891 1892 - (if MULTIPROCESSOR) tweak processor trampoline code. 1893 1894 - (if MULTIPROCESSOR) call mi_cpu_attach when attaching 1895 secondary processors. 1896 1897 - (if schedhz!=0) call schedclock regardless of the value of 1898 curlwp. 1899 1900 - of course, update MD users of scheduler/switching API. 1901 1902 Branch: yamt-lazymbuf 1903 Description: change the way to share mbuf external storage so that 1904 it can work without kernel_lock. 1905 Status: Terminated; merged to -current 1906 Start Date: Wed Jul 6 2005 1907 End Date: Mon Mar 24 2008 1908 Base Tag: yamt-lazymbuf-base14 1909 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org> 1910 Scope: src/sys (src/common is tagged but not branched) 1911 Notes: 1912 1913 Branch: yamt-km, yamt-km-doc 1914 Description: simplify/improve kernel memory management and bootstrap 1915 Status: Terminated; merged to -current 1916 Start Date: Tue Jan 25 2005 1917 End Date: Fri Apr 1 2005 1918 Base Tag: yamt-km-base{,2,3,4}, yamt-km-doc-base 1919 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org> 1920 Scope: yamt-km: src/sys 1921 yamt-km-doc: src/share/man/man9/uvm.9 1922 Notes: http://mail-index.NetBSD.org/tech-kern/2004/12/25/0005.html 1923 1924 the followings are per-port status. 1925 (account names mean "tested by".) 1926 1927 works enough to go to multiuser: 1928 alpha, i386, xen (yamt@) 1929 pc532 (simonb@) 1930 alpha, i386, mac68k, macppc, pmax, shark, 1931 sparc, sparc64, sun3, x68k (chs@) 1932 cobalt, dreamcast, hp300, news68k, newsmips, 1933 sun3x (tsutsui@) 1934 amiga (mhitch@) 1935 cats, hp700 (skrll@) 1936 xen (bouyer@) 1937 1938 known to have the same problem as trunk: 1939 vax (chs@, stuck while running kvm_mkdb) 1940 1941 known to have a problem: 1942 luna68k (and, if any, other m68k ports which use TTR) 1943 needs to be revisited. 1944 -> for luna68k, although not tested, 1945 Sysmap has been moved to avoid kva conflict with 1946 I/O ranges. 1947 1948 buildable: 1949 src/sys/arch/acorn26/conf/GENERIC 1950 src/sys/arch/acorn32/conf/GENERIC 1951 src/sys/arch/algor/conf/P6032 1952 src/sys/arch/alpha/conf/GENERIC 1953 src/sys/arch/alpha/conf/GENERIC.MP 1954 src/sys/arch/amd64/conf/GENERIC 1955 src/sys/arch/amd64/conf/GENERIC.MP 1956 src/sys/arch/amiga/conf/GENERIC 1957 src/sys/arch/arc/conf/GENERIC 1958 src/sys/arch/atari/conf/MILAN-PCIIDE 1959 src/sys/arch/bebox/conf/GENERIC 1960 src/sys/arch/cats/conf/GENERIC 1961 src/sys/arch/cesfic/conf/GENERIC 1962 src/sys/arch/cobalt/conf/GENERIC 1963 src/sys/arch/dreamcast/conf/GENERIC 1964 src/sys/arch/evbarm/conf/TS7200 1965 src/sys/arch/evbppc/conf/WALNUT 1966 src/sys/arch/evbsh3/conf/COMPUTEXEVB 1967 src/sys/arch/evbsh5/conf/CAYMAN64 1968 src/sys/arch/hp300/conf/GENERIC 1969 src/sys/arch/hp700/conf/GENERIC 1970 src/sys/arch/hpcarm/conf/JORNADA728 1971 src/sys/arch/hpcmips/conf/GENERIC 1972 src/sys/arch/hpcsh/conf/GENERIC 1973 src/sys/arch/hpcsh/conf/HPW650PA 1974 src/sys/arch/i386/conf/GENERIC 1975 src/sys/arch/i386/conf/GENERIC.MP 1976 src/sys/arch/i386/conf/XEN0 1977 src/sys/arch/i386/conf/XENU 1978 src/sys/arch/ibmnws/conf/GENERIC 1979 src/sys/arch/iyonix/conf/GENERIC 1980 src/sys/arch/luna68k/conf/GENERIC 1981 src/sys/arch/mac68k/conf/GENERIC 1982 src/sys/arch/macppc/conf/GENERIC 1983 src/sys/arch/macppc/conf/GENERIC.MP 1984 src/sys/arch/mipsco/conf/GENERIC 1985 src/sys/arch/mmeye/conf/GENERIC 1986 src/sys/arch/mvme68k/conf/GENERIC 1987 src/sys/arch/netwinder/conf/GENERIC 1988 src/sys/arch/news68k/conf/GENERIC 1989 src/sys/arch/newsmips/conf/GENERIC 1990 src/sys/arch/next68k/conf/GENERIC 1991 src/sys/arch/ofppc/conf/GENERIC 1992 src/sys/arch/pc532/conf/GENERIC 1993 src/sys/arch/pmax/conf/GENERIC 1994 src/sys/arch/prep/conf/GENERIC 1995 src/sys/arch/sandpoint/conf/GENERIC 1996 src/sys/arch/sbmips/conf/GENERIC 1997 src/sys/arch/sgimips/conf/GENERIC32_IP3x 1998 src/sys/arch/shark/conf/GENERIC 1999 src/sys/arch/sparc/conf/GENERIC 2000 src/sys/arch/sparc/conf/GENERIC.MP 2001 src/sys/arch/sparc64/conf/GENERIC 2002 src/sys/arch/sparc64/conf/GENERIC.MP 2003 src/sys/arch/sun2/conf/GENERIC 2004 src/sys/arch/sun3/conf/GENERIC 2005 src/sys/arch/vax/conf/GENERIC 2006 src/sys/arch/vax/conf/GENERIC.MP 2007 src/sys/arch/x68k/conf/GENERIC 2008 2009 src/sys/arch/playstation2/conf/GENERIC 2010 2011 Branch: yamt-pdpolicy 2012 Description: play with page replacement policy 2013 - separate page replacement policy from the rest of kernel 2014 - implement alternative replacement policy 2015 - related read-ahead adjustment? 2016 Status: Terminated; merged to -current 2017 Start Date: Sun Mar 5 2006 2018 End Date: Sat Sep 16 2006 2019 Base Tag: yamt-pdpolicy-base9 2020 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org> 2021 Scope: src/sys (src/common is tagged but not branched) 2022 Notes: 2023 2024 Branch: yamt-pf42 2025 Description: import newer pf from OpenBSD 4.2 2026 Status: Terminated; merged to -current 2027 Start Date: Sat Apr 19 2008 2028 End Date: Wed Jun 18 2008 2029 Base Tag: yamt-pf42-base4 2030 Maintainer: Peter Postma <peter (a] NetBSD.org>, 2031 YAMAMOTO Takashi <yamt (a] NetBSD.org> 2032 Scope: src 2033 Notes: see sys/dist/pf/net/TODO 2034 2035 Branch: yamt-readahead 2036 Description: play with file readahead 2037 Status: Terminated; merged to -current 2038 Start Date: Mon Nov 14 2005 2039 End Date: Wed Nov 30 2005 2040 Base Tag: yamt-readahead-base3 2041 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org> 2042 Scope: src/sys 2043 Notes: 2044 2045 Branch: yamt-uio_vmspace 2046 Description: uio_lwp/uio_segflg -> uio_vmspace 2047 Status: Terminated; merged to -current 2048 Start Date: Mon Dec 31 2005 2049 End Date: Wed Mar 1 2006 2050 Base Tag: yamt-uio_vmspace-base5 2051 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org> 2052 Scope: src/sys 2053 Notes: 2054 2055 Branch: yamt-splraiseipl 2056 Description: finish implementing splraiseipl (and makeiplcookie). 2057 http://mail-index.NetBSD.org/tech-kern/2006/07/01/0000.html 2058 2059 - completes workqueue(9) and netbt. 2060 - fix PR/33218. 2061 2062 Status: Terminated; merged to -current 2063 Start Date: Mon Sep 18 2006 2064 End Date: Fri Dec 22 2006 2065 Base Tag: yamt-splraiseipl-base5 2066 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org> 2067 Scope: src/sys (src/common is tagged but not branched) 2068 Notes: 2069 tested (by who): 2070 alpha (yamt) 2071 alpha (pavel) 2072 amd64 (reported privately) 2073 cobalt (tsutsui) 2074 ews4800mips (tsutsui) 2075 hp300 (tsutsui) 2076 hpcarm (reported privately) 2077 i386 (yamt) 2078 macppc (tsutsui) 2079 news68k (tsutsui) 2080 sgimips(IP32) (tsutsui) 2081 sparc(sun4c) (tsutsui) 2082 sun2 (tsutsui) 2083 sun3 (tsutsui) 2084 sun3x (tsutsui) 2085 xen (yamt) 2086 2087 compile-tested: 2088 acorn26 2089 acorn32 2090 algor 2091 amiga 2092 arc 2093 atari 2094 bebox 2095 cats 2096 cesfic 2097 dreamcast 2098 evbarm 2099 evbmips 2100 evbppc(marvell) 2101 evbppc(ibm4xx) 2102 evbsh3 2103 hp700 2104 hpcmips 2105 hpcsh 2106 ia64 2107 ibmnws 2108 iyonix 2109 landisk 2110 luna68k 2111 mac68k 2112 mmeye 2113 mvme68k 2114 mvmeppc 2115 mipsco 2116 netwinder 2117 newsmips 2118 next68k 2119 ofppc 2120 pc532 2121 pmax 2122 pmppc 2123 prep 2124 sandpoint 2125 sbmips 2126 shark 2127 sparc 2128 sparc64 2129 vax 2130 x68k 2131 zaurus 2132 2133 not tested: 2134 pdp10 (i don't know how to build) 2135 sh5 (not buildable with an unrelated problem.) 2136 2137 compile CAYMAN64/netbsd32_sa.o 2138 cc1: warnings being treated as errors 2139 /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c: In function 'netbsd32_sa_ucsp': 2140 /exports/nbsd/src/sys/compat/netbsd32/netbsd32_sa.c:126: warning: implicit declaration of function '_UC_MACHINE32_SP' 2141 --- netbsd32_sa.o --- 2142 *** [netbsd32_sa.o] Error code 1 2143 1 error 2144 2145 notyet: 2146 amigappc 2147 playstation2 2148 2149 Branch: yamt-vop 2150 Description: remove several VOPs 2151 Status: Terminated; merged to -current 2152 Start Date: Wed Oct 19 2005 2153 End Date: Wed Nov 2 2005 2154 Base Tag: yamt-vop-base3 2155 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org> 2156 Scope: src/sys 2157 Notes: http://mail-index.NetBSD.org/tech-kern/2005/09/27/0000.html 2158 2159 Branch: yamt-x86pmap 2160 Description: merge i386 and amd64 pmap 2161 Status: Terminated; merged to -current 2162 Start Date: Mon Sep 24 2007 2163 End Date: Fri Oct 19 2007 2164 Base Tag: yamt-x86pmap-base4 2165 Maintainer: YAMAMOTO Takashi <yamt (a] NetBSD.org> 2166 Scope: src/sys (src/common is tagged but not branched) 2167 Notes: 2168 2169 Branch: gdamore-uart 2170 Description: Add register table support to com driver. 2171 Status: Active 2172 Start Date: 14 June 2006 2173 End Date: 13 July 2006 2174 Base Tag: gdamore-uart-base 2175 Maintainer: Garrett D'Amore <gdamore (a] NetBSD.org> 2176 Scope: kernel 2177 Notes: Results in consolidation of Alchemy (mips/dev/alchemy/aucom.c) 2178 com support, and also removes a nasty hack from Atheros com. 2179 2180 Branch: christos-time_t 2181 Description: Change time_t and dev_t to 64 bit quantities; fix timeval 2182 and timespec. 2183 Status: merged 2184 Start Date: 29 March 2008 2185 End Date: 10 January 2009 2186 Base Tag: christos-time_t-base 2187 Maintainer: Christos Zoulas <christos (a] NetBSD.org> 2188 Scope: kernel, libc, libutil, userland 2189 Notes: Requires a major bump of all libraries except libc, libutil. 2190 2191 Branch: rtr-xorg-branch 2192 Description: xorg & static build alterations to src/x11 2193 Status: Dead; replaced by src/external/mit/xorg 2194 Start Date: Nov 15 2004 2195 End Date: ? 2196 Base tag: rtr-xorg-branch-base 2197 Maintainer: Tyler R. Retzlaff <rtr (a] NetBSD.org> 2198 Scope: x11 2199 distrib/sets/lists 2200 share/mk/bsd.x11.mk 2201 share/mk/bsd.own.mk 2202 etc/mtree/NetBSD.dist 2203 Notes: Requires parts of xsrc/xfree (HEAD) 2204 xsrc/local, xsrc/xfree/xc/programs/Xserver/hw/netbsd 2205 Requires xorg (XORG-6_8_1) 2206 2207 Branch: gmcgarry_ctxsw 2208 Description: Separate scheduler from context-switch code 2209 Status: Dead; replaced by cpu_switchto / yamt-idlelwp branch 2210 Start Date: 18 December 2002 2211 End Date: 2212 Base Tag: gmcgarry_ctxsw_base 2213 Maintainer: Gregory McGarry <gmcgarry (a] NetBSD.org> 2214 Scope: kernel 2215 Notes: Removing knowledge of the scheduler and its run queues 2216 from the machine-dependent context switch code is the 2217 first step in cleaning up the scheduler. It is necessary 2218 for the newlock branch, making the scheduler SMP friendly, 2219 adding real-time scheduler extensions, and reducing the 2220 number of code paths for LWP and proc switching. 2221 2222 Branch: nick-hppapmap 2223 Description: Update of hppa pmap with OpenBSD code. 2224 Status: Terminated; merged to -current 2225 Start Date: 27 October 2008 2226 End Date: 30 April 2009 2227 Base Tag: nick-hppapmap-base3 2228 Maintainer: Nick Hudson <skrll (a] NetBSD.org> 2229 Scope: sys/ 2230 Notes: Port of the OpenBSD pmap including support for PA2.0 CPUs in 2231 32-bit mode. 2232 2233 Branch: thorpej-atomic 2234 Description: Implementation of an atomic memory operations API modeled 2235 after the one in Solaris 10. 2236 Status: Terminated; merged to -current 2237 Start Date: Apr 11 2007 2238 End Date: Nov 18 2007 2239 Base tag: thorpej-atomic-base 2240 Maintainer: Jason Thorpe <thorpej (a] netbsd.org> 2241 Scope: src/common 2242 src/sys 2243 Notes: Base atomic primitives need to be implemented for 2244 all of the supported architectures: 2245 2246 alpha DONE 2247 arm DONE 2248 hppa 2249 i386 DONE 2250 ia64 2251 m68k DONE (except for 68010) 2252 mips 2253 ns32k 2254 powerpc DONE except for membar_*() 2255 powerpc64 DONE except for membar_*() 2256 sh3 2257 sparc DONE except for membar_*() 2258 sparc64 DONE except for membar_*() 2259 vax 2260 x86_64 DONE 2261 2262 Tested: 2263 2264 alpha NO 2265 arm NO 2266 hppa NO 2267 i386 NO 2268 ia64 NO 2269 m68k NO 2270 mips NO 2271 ns32k NO 2272 powerpc NO 2273 powerpc64 NO 2274 sh3 NO 2275 sparc NO 2276 sparc64 NO 2277 vax NO 2278 x86_64 NO 2279 2280 TODO: 2281 2282 all - Need to replace mb_*() with membar_*(). 2283 2284 - Audit MUTEX_CAS() and RWLOCK_CAS() uses 2285 to see of membar_enter() is required here. 2286 2287 - Talk to ad@ -- figure out of non-atomic 2288 mutex / rwlock release is actually safe. 2289 2290 arm - Consider using a RAS technique like 2291 MIPS uses for _lock_cas() and the mutex 2292 stubs. Possibly do more than one atomic 2293 op as a RAS. Possibly implement mutex 2294 stubs using the technique. 2295 2296 m68k - Need to do 68010 support. 2297 2298 i386 - Need to change when x86_patch() is called 2299 so we can test ncpus. 2300 2301 powerpc - Figure out if we need barriers in the 2302 atomic ops themselves (hopefully not!) 2303 2304 x86_64 - Need to change when x86_patch() is called 2305 so we can test ncpus. 2306 2307 ######################################################################## 2308 # Other: 2309 ######################################################################## 2310 2311 Branch: magnum 2312 Description: ? 2313 Status: ? 2314 Start Date: 2315 End Date: 2316 Base Tag: magnum-base 2317 Maintainer: ? 2318 Scope: kernel 2319 Notes: 2320 2321