DF-5019 / run.log
DF-5019 — decisive baseline run (tbridge compiled into the kernel)
Guest: DragonFly 6.5-DEVELOPMENT, custom kernel "DF5019" = X86_64_GENERIC
+ "device tbridge" (dfregress-style), built 2026-09-26 03:54 UTC, INVARIANTS
in effect (stock X86_64_GENERIC ships options INVARIANTS, sys/config/
X86_64_GENERIC:56). /dev/tbridge appears at boot: crw------- root:wheel.
Commands (as root):
# kldload ./mytcase.ko # registers tbridge_curtest (tb_run calls
# # tbridge_test_done(RESULT_PASS))
# ./poc # ioctl(TBRIDGE_GETRESULT) with NO prior
# # TBRIDGE_LOADTEST
The ssh session died with the panic (run command timed out); serial console:
login: panic: assertion "tbridge_testcase != NULL" failed in tbridge_test_done at /usr/src/sys/dev/misc/tbridge/tbridge.c:196
cpuid = 5
Trace beginning at frame 0xfffff801183aba80
tbridge_test_done() at tbridge_test_done+0xe9 0xffffffff809d2309
tbridge_test_done() at tbridge_test_done+0xe9 0xffffffff809d2309
Debugger("panic")
CPU5 stopping CPUs: 0x0000001f
stopped
Stopped at Debugger+0x7c: movb $0,0xbfa639(%rip)
db>
Guest wedged in DDB; single-shot deterministic panic (no race required).
Contrast run (tbridge as kldload'able kmod on the stock GENERIC kernel,
run.kmod.log): no panic — out-of-tree kmods compile without INVARIANTS, so
the KKASSERT is a no-op and the walk degrades to copyout ENOTSUP (errno 45).