This is an old revision of the document!


Email: markj@FreeBSD.org

Here are some lists of things.

These are things that I would like to eventually get done/fix. Please mail me if you'd like to work on them.

Merge fdescfs into devfs.

  • needed for fexecve()+shebang
  • expected by lots of third-party software
  • default in other unix-like kernels
  • considerations:
    • needs to appear in jails by default as well
    • need to sort out Capsicum integration

Early microcode loading on AMD

  • lacking a convenient test system

TRIM for swap devices

IPv6 netdump(4)

  • need to use Neighbour Discovery to find the first-hop router

Kernel dump regression testing

  • doable with bhyve and expect after r346550

lockmgr(9), rmlock(9) and epoch(9) integration into lockstat

devvn_refthread() is a scalability bottleneck with many bhyve VMs or many vCPUs

Implement Linux's MADV_DONTNEED semantics

  • Frees pages (and backing swap) if the object backing the entry is OBJT_DEFAULT or _ANON and OBJ_ONEMAPPING. Is a correct implementation required to do anything else?
  • Maybe implement it using msync() instead of madvise() since the latter is advisory and should stay that way. Maybe MS_PURGE, after illumos' MADV_PURGE.

elftoolchain addr2line is extremely slow

  • Try feeding it a list of addresses by piping them into addr2line -afi -e kernel.debug
  • Compare with GNU addr2line and weep

sendmail hangs on boot if the hostname contains a single component

Make SCTP a loadable module and remove it from GENERIC

  • It presents a large attack surface but is not widely used

Better VM statistics

  • Per-domain stats in vmstat -s output
  • Add counters for the various branches in page daemon scanning (e.g., how many times did we skip a busy page?)
  • Measure internal fragmentation in UMA zones
  • Page table and PV chunk memory usage

Valgrind regression tests

syzbot reports

Capsicumizing the base system

  • False-positive WITNESS warnings. These confuse automation and new users alike.
  • stack_chk_init: WARNING: Initializing stack protection with non-random cookies!
    • I don't know whether this is important or how to fix it.
  • WARNING: attempt to domain_add(%s) after domainfinalize()
    • Printed when bluetooth modules are auto-loaded during boot

Set a Kyua configuration variable from the command line

  • kyua -v test_suites.FreeBSD.allow_sysctl_side_effects=1 test

  • markjohnston.1567375315.txt.gz
  • Last modified: 2019/09/01 22:01
  • by MarkJohnston