DragonFlyBSD Kernel Audit
DF-2437 / fix_run.log
← back to finding ↓ download raw
--- PATCHED MODULE (dm_target_delay.ko with fix.diff applied) ---

[*] DF-2437 dm_target_delay objcache-destroy-on-unload
[*] loaded modules:
 4    2 0xffffffff82600000    a2000 dm.ko
 5    1 0xffffffff826a2000     2000 dm_target_delay.ko

[*] step 1: create + reload + resume delay device
[*] delay device 'df2437' is now ACTIVE with 100ms delay
[*] device accessible at /dev/mapper/df2437

[*] step 2: starting background I/O on delay device
[*] step 3: kldunload dm_target_delay (destroys objcache despite EBUSY)
kldunload: can't unload file: Device busy
(kldunload returned nonzero -- expected EBUSY)

[*] step 4: generating I/O to trigger objcache_get(NULL)...
[*] expect: kernel panic -- NULL deref in objcache_get/put
(GUEST SURVIVES -- no panic, objcache NOT destroyed)

--- second confirmatory run ---
(same result: EBUSY returned, no panic, guest stays up)

--- guest status after both runs ---
up
kldstat shows dm_target_delay.ko still loaded (refs=0/-1)