DF-2447 / fix_build.log
=== DF-2447 single-fix dm.ko build (patched dm_dev.c + dm_ioctl.c + dm.h) === Build dir: /usr/src/sys/dev/disk/dm (KMOD=dm, bsd.kmod.mk; standalone loadable module) Kernel: DragonFly 6.5-DEVELOPMENT #0 cc 8.3 [DragonFly] $ cd /usr/src/sys/dev/disk/dm && make cc -O2 -pipe -D_KERNEL -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes \ -Wmissing-prototypes -Wpointer-arith -Wcast-qual -Wold-style-definition \ -Wmissing-include-dirs -Wno-pointer-sign -Winit-self -Wundef \ -Wno-unused-but-set-variable -std=gnu11 -Werror -DKLD_MODULE -nostdinc ... \ -c /usr/src/sys/dev/disk/dm/dm_dev.c cc ... -Werror -DKLD_MODULE ... -c /usr/src/sys/dev/disk/dm/dm_ioctl.c cc -Wl,--build-id=sha1 -nostdlib -Wl,--hash-style=sysv -r -Wl,-d -o dm.ko \ device-mapper.o dm_dev.o dm_ioctl.o dm_pdev.o dm_table.o dm_target.o \ dm_target_error.o dm_target_zero.o MAKE_RC=0 (no errors, no warnings under -Werror) === final patched dm.ko === -rw-r--r-- 1 root wheel 56072 /usr/obj/usr/src/sys/dev/disk/dm/dm.ko SHA256 (/usr/obj/usr/src/sys/dev/disk/dm/dm.ko) = 4c3239e9c551576d24e13a10a8205e25e6de6a06cbf7616711ac6dbf2edf564a === installed to /boot/kernel/dm.ko (same hash) === SHA256 (/boot/kernel/dm.ko) = 4c3239e9c551576d24e13a10a8205e25e6de6a06cbf7616711ac6dbf2edf564a === new symbol present (proof the fix is in the module) === $ nm dm.ko | grep -E 'dm_dev_destroy_by_key|dm_dev_remove_ioctl' 0000000000001100 T dm_dev_destroy_by_key 0000000000001910 T dm_dev_remove_ioctl (Note: dm is a purely loadable KLD module; the fix lives entirely in dm.ko, not in the kernel image, so kern.version stays at the #0 baseline and only dm.ko is swapped -- exactly the approach used for sibling DF-2446.)