DF-2630 dstate_census.txt — unkillable D-state pile-up (stock kernel #0) Guest: DragonFly dfbsd 6.5-DEVELOPMENT #0 (INVARIANTS), Sat Aug 29 00:46-00:56 UTC 2026 NOTE: reconstructed verbatim from the live verification session (the guest-side files were lost to subsequent vm.sh resets); every line below was captured by `ps axlw` / `ps -o pid,stat,wchan,command` during the run. --- step 3 (+4s): first lookup wedges in VFS_ROOT ---------------------- 0 877 875 22 196 0 9056 912 h2root S5 ?? 0:00.00 ls /mnt/h2 --- step 6: kill -9 sent to subshells; orphaned children persist ------- --- +40min: orphaned lookups + umounts, all D-state -------------------- 0 877 1 3 177 0 9056 932 vfs_busy D5 ?? 0:00.00 ls /mnt/h2 0 884 1 9 183 0 9056 908 vfs_busy D2 ?? 0:00.00 ls /mnt/h2 0 894 1 4 178 0 4392 704 vfs_busy D1 ?? 0:00.00 umount /mnt/h2 0 900 1 0 174 0 4392 704 h2twait D0 ?? 0.00.04 umount -f /mnt/h2 0 965 962 22 196 0 9056 908 vfs_busy D0 ?? 0:00.00 ls /mnt/h2 0 971 962 14 188 0 9056 912 vfs_busy D0 ?? 0:00.00 ls /mnt/h2 0 996 992 22 196 0 9056 904 vfs_busy D1 ?? 0:00.01 ls /mnt/h2 0 997 991 22 196 0 4140 664 vfs_busy D5 ?? 0:00.00 stat /mnt/h2 (corrected line: pid 900 cpu time field reads 0:00.04) All of the above survived `kill -9` (PCATCH breaks the h2root loop for the FIRST process, but the vfs_busy waiters are in uninterruptible loops and the mount accumulates leaked busy refs). pids 877/884 were still present 40+ minutes later, orphaned (ppid 1). --- earlier accidental proof: bare `mount` listing also wedges -------- 0 940 930 0 174 0 6564 828 h2root S2 ?? 0:00.01 mount --- shutdown serial (see shutdown_serial.log) -------------------------- Aug 29 00:56:27 dfbsd init: some processes would not die; ps axl advised unmount of filesystem mounted from /dev/vn0@testvol failed (BUSY) unmount(...): forced umount of "(null)" - 1 namecache refs, 7 mount refs