File:  [NetBSD Developer Wiki] / wikisrc / releng / netbsd9.mdwn
Revision 1.40: download - view: text, annotated - select for diffs
Sat Dec 22 17:41:05 2018 UTC (17 months ago) by maya
Branches: MAIN
CVS tags: HEAD
Add 'revert pmax changes to bus_space / bus_dma' as an item to finish
before release. The issues introduced by this change have not been
resolved between netbsd-8 and netbsd-9.

[[!meta title="NetBSD 9.0 preliminary tasklist"]]

## PRs worth fixing

(carried over unclosed PRs from [[netbsd8]])

* ~~[[!template id=pr number=53053]]: non-MULTIPROCESSOR hangs building Go~~ (still reproducable with newer go?)  
  [[!template id=pr number=53173]]: "go test net/http" locks up the machine (both PRs tied /!\ )

* [[!template id=pr number=53016]]: Clock not stable /!\

* [[!template id=pr number=53017]]: Kernel panics every now and then with "fpusave_lwp: did not" message

* [[!template id=pr number=53155]]: Wedge after <12h uptime when >2 bnx network interfaces in use /!\

* [[!template id=pr number=53161]]: ATF test runs leave a rump_server process around

* [[!template id=pr number=53286]]: hdaudio(4), iwm(4) and rtsx(4) detections fail in UEFI case /!\

* [[!template id=pr number=53291]]: GPT prevents installation

## Bug Bountys

PRs in the above list marked with /!\ are show stoppers and have a bug bounty of $100 attached.
If you find a solution for one of the marked issues that leads to closing of the PRs, we will get
in touch with you.

## Features to finish/implement

* IPF/PF deprecation in favour of NPF
   - TODO: docs, what features to add to NPF ...
   - ~~variants of [[!template id=pr number=48214]] "clearing WDCTL_RST failed" during boot~~ (done, waiting for confirmation)
   - ~~[[!template id=pr number=52783]] parallel fsck hangs during boot of 8.99.[5678]~~ (done)
   - ~~[[!template id=pr number=52614]] qemu virtual CD-ROM reports read errors since recent wdc changes~~ (done)
   - [[!template id=pr number=53183]] System stops servicing I/O requests and eventually deadlocks
* UBC using direct map working on amd64 and possibly alpha, aarch64
   - [[!template id=pr number=53124]] (FFS is slow because pmap_update doesn't scale)
   - all known issues fixed - confirmed working on amd64 and alpha
   - patch for aarch64 being tested
* XEN AVX working
   - ~~[[!template id=pr number=50332]] AVX instructions don't work but OSXSAVE flag is set~~ (done)
* ~~~kASan for amd64~~~ (done)
* ~~~kASan for aarch64~~~ (done)
* compiler-rt in the base with enabled features for Clang/LLVM
* LVM mirror target
* ~~~add NVMM~~~ (done)
* ~~~plug kernel pointer leaks~~~ (done)
* ~~~fix Nouveau, some GPUs stopped working after the update~~~ (done)
* umb(4) confirmed working with network traffic
* [Revert pmax switch to common MIPS bus_space and bus_dma](

## Nice to have

* gcc 8+ from a sanitizers point of view
* ~~~arm: GENERIC kernel config for armv7 boards.~~~ (done)
* ~~~arm64: Support for servers following SBSA/SBBR standards~~~ (done)
* ~~~updated graphics drivers~~~ (done)
* ~~~ARM64 ACPI~~~ (done)
* WireGuard
* expand x86 intr masks to allow up to 64 interrupts per CPU and hence 48 MSI/MSI-X on cpu0

## Nice to have, but likely won't be finished on time

* merge pgoyette-compat
* address failing ptrace(2) tests, cover the remaining scenarios (there are planned ~2k ATF tests total for the elementary functionality)
* rework semantics of threading operations in ptrace(2)


## Release notes (top)

* Support for Aarch64 (ARM 64-bit) machines.  
  The aarch64 port should work on many Allwinner machines, SBSA/SBBR compatible servers.  
  It supports multiple processors, including in a big.LITTLE configuration, ACPI and UEFI.  
  It uses a single kernel to support a large amount of boards with the help of ACPI+UEFI or FDT.
* Updated graphical acceleration support from Linux 4.4.  
  Intel graphics including Kaby Lake. Nouveau and radeon.
* nvmm(4) - hardware-accelerated virtualization, currently supporting x86-SVM.  
  a patched QEMU package exists that utilizes this.  
  XXX make statement reflect reality at the time of the release.
* KASLR - kernel address stack randomization.  
  Note that the default kernel does not use this option.  
  XXX maybe link for how to use it, then.
* kASAN - kernel address sanitizer build option, to detect memory access violations, for x86 and aarch64.
* kUBSAN - kernel undefined behaviour sanitizer.
<!-- XXX kamil please list more things about micro-UBsan, MKLIBCSANITIZER, etc. -->
* KLEAK - detects kernel memory leaks.
* bwfm(4) - Broadcom Full-MAC wireless driver at PCI and USB (from OpenBSD)
* ena(4) - Elastic Network Adapter (from FreeBSD)
* GCC leak sanitizer support

ARM hardware support:

* Support for running on Amazon AWS ARM instances.
* Support for nVidia Tegra X1 SoCs
* Support for Pine64 SoCs, including pinebook
<!-- XXX list more? -->


* newsmips NWS-4000 support

The following components have been removed:  

* ISDN support and related drivers (daic(4), iavc(4), ifpci(4), ifritz(4), iwic(4), isic(4))
* Network ATM protocol code and related drivers (midway(4))
* Remote NDIS API compatibility (for running unmodified older Windows drivers)
* SVR4 binary compatibility code
* VM86
* IPKDB (remote debugger)
* NetOctave NSP2000 security accelerator, n8(4)

## Release notes (next)

* GCC 6.5.0
* GDB 8.0.1
* LLVM 7.0.0
* OpenSSL 1.1.1a
* OpenSSH 7.8
* sqlite 3.26.0

CVSweb for NetBSD wikisrc <> software: FreeBSD-CVSweb