====== HAVE NEED WANT For 12.0 ====== [[https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=228911|FreeBSD 12.0 Release action items]] [[https://bugs.freebsd.org/bugzilla/showdependencytree.cgi?id=228911|Dependency tree]] This year we didn't do a traditional Have / Need / Want, but instead listed things we're getting in to 12.0, code freeze in 2 months. %%FreeBSD%% 12.0 Release Planning Session at BSDCan 2018 rgrimes on point to compile this into re@ actions. What are the things to get done for 12.0 in the time allotted. [owner -- driving force] * %%OpenSSL%% 1.1 in the base [gordon, Bernard Spil?] * Maybe make it a private library? A company starting with Y has had years of pain doing this… every library that uses openssl needs to be private library * PAM SNOWBALLS QUICKLY THERE CAN BE ONLY ONE! (Cue Queen 🎸) * Root CA in base? [allanjude] [Bundle the package!] * Move everything to ports - solved. (Does that include ports?) * Break bad APIs (gets(), getwd(%%))%% (keep compat symbols) [emaste] * Break the ABI xinpcb, etc add padding, etc [brooks, jtl] * Merge GELI UEFI (installer changes for this too) [imp,nathanw,allanjude, Eric %%McCorkle%%] * Dump bug (uninitialized variable) [imp,kirk] * Do we need to add a PR thing for regression / tagging PRs? * GCC 4.2.1 not in 12? Knife fight after this meeting to decide 50/50 [jhb] * [[/PkgBase|PkgBase]] -- core codebase pieces in place for 12.0 release [brd] * Devmatch loose ends [imp] * UEFI boot loader loose ends [imp] * Module loading penalty reduction [imp] * LUA loader on by default (need to hash out coexistence or not) [imp] * Fat MINIMAL for GENERIC? Maybe? [imp] * TCP stack as a module [jtl] * Tightening up permission on some pages in kernel memory (amd64 only) [jtl] * Ifconfig fooX -alias (bug) PR needed (maybe two) [dteske] * Build optimizations (WITH_SYSTEM_LLD, META_MODE) [bdrewery] * GONE IN 13 STAMPING PARTY [brooks,imp] * Deprecate lack of deprecation guidelines [imp] * EFI vt code for arm64 [manu] * Maybe have One Clang to Build them All (and in the process link them) during make universe [bdrewery] * Early microcode loading on x86 (in kernel: early boot and on resume) [markj] * Verified loader binary verification (opt-in) (loader loading kernel) [sjg] * Ficl update for boot loader [sjg,imp] * Speculative fixes for speculative execution (specifically ARM for latest round of issues) [speculative owner: emaste] (arm, AMD amd64) * List of supported boards for non-x86 (RPi0, RPi3+) [manu] * Cull armv6/armv7 boards [manu] * Generic armv7 release image + tool to add uboot to generic image. [manu] * 12.0 booting 2x faster to login (compared to 11.2) [cperciva] * Why is the boot loader taking so long [cperciva,imp] * Verified exec phabricator (kernel loading userland) [stevek] * Pkgbase include manifest for verified-exec signing (nice to have) [gordon as SO, sjg] * ASLR [kib] * NVDIMM [kib] * Interface for non-cached memory with userland control [not jhb] * Find a way to make amd64 and arm64 less confusingly similar (panic: bad peter) (DONE) 👍 ===== FreeBSD 13 ===== * Firmware update tools * ZFS crypto * %%FreeBSD%% 13 known good laptops * Updating the Developers Handbook * Testing integrating into the tree (use also for qemu-user and RE) * CAPSICUM [jonathan] (Project Capsicum) * Shared expectations for things * DRM (arm64, all the other issues) * MALI images / tools * Native buildkernel with modules ports [jhb] * Integrate Peter Holm’s stress2 into the tree * Fix unionfs or kill it (basket of panics) * Investigate “Baskets of Panic” as conference schwag * Do any candidates for core NOT have binders full of panics? * NVMe rehash * Schedule * iSCSI offload * Multiqueue for CAM/storage (kthreads via ZFS) * GELI hits this too with n(cores) * n(providers) threads * Dexter crash dump and how to debug. network * Taskqueue scalability * Continue to prevent Peter from talking * Dtrace improvements (sctp providers need work) * ZFS RAIDZ Expansion (slides - Matt Ahrens) * %%OpenRC%% investigation into replacing rc.d (proposals coming -- FCP and Phab) * Known Good Laptops on Wiki Page needs love: [[/Laptops]] * Unique identifiers? (SMBIOS / DMI info?) * Look to Linux for naming problems (Why? We’ve got plenty of our own…) * %%CostcoStick%% (USB boot device; plug in, boot, script gathers data about hardware (then starts mining bitcoin%%))%% * Intel drm (socialize pkg kmod) * Trackpads * Bhyve (what to do now that Peter has moved to Apple) * 32-bit / 64-bit ARM * 3 years of %%GSoC%% code bitrotting * Trust Framework * Power9 * RISC V * Power Management * Remove sbrk() (Emacs works finally; [[https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24892]]) * X32 ABI * Compat layer for amd64 * MIPS n32 kernel kill it with fire then pour gas on it and light it again, or to quote the great jkh: Bang! Bang! Bang! Click! Reload!! Bang! Bang! * 64-bit time_t i386 (x32?) * Merge CHERI support from cambridge * One crypto framework that doesn’t totally suck * Loader APIs for trusted (currently use slow but minimal change) * Remaining bits for secure boot for the using ‘buy in a store’ use case * TPM * Ipf deprecation , ipfilter, pf, ipfw (case study for deprecation policy, freebsd cluster uses pf and relies on it) * Unionfs isn’t totally useless * RPi SDIO stack (MMCCAM fleshing out -- basics are in place) (kibab,imp) * Linux equivalent to inotify (kqueue functionally the same, but doesn’t scale as well as inotify) * Filesystem events * Coreboot experiments (Isn’t coreboot “just” an implementation of UEFI? So wouldn’t things “just work”?) * Food eating * W^X