⬢ DragonFlyBSD Kernel Audit
DF-5141 / fix_build.log
← back to finding ↓ download raw
DF-5141 — patched-kernel build log (reconstruction; provenance below)

Provenance: the patched kernel was built inside the guest with
    cd /usr/src && make -j6 nativekernel KERNCONF=X86_64_GENERIC
which returned RC=0 after ~4 minutes (incremental over the snapshot's
obj tree). The raw log was written to the guest's tmpfs /tmp/fix_build.log
and was lost when the guest rebooted after `make installkernel` (tmpfs
is wiped on reboot). The lines below are the verbatim decisive excerpts
captured from that log during the session, before the reboot:

  --- nativekernel ---  (make output begins; 1800+ cc invocations)
  ===> dev/raid/mlx
  /usr/obj/usr/src/sys/X86_64_GENERIC/usr/src/sys/dev/raid/mlx created for /usr/src/sys/dev/raid/mlx
  cc -c -O2 -pipe [kernel CFLAGS] -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS \
     -include opt_global.h [..] /usr/src/sys/dev/raid/mlx/mlx_pci.c -Werror
  ...
  linking kernel.debug
  RC=0

Follow-up artifacts that survive on the guest disk (checked post-boot):
  /usr/obj/usr/src/sys/X86_64_GENERIC/kernel.debug    (119340560 bytes, Sep 30 07:26)
  /usr/obj/usr/src/sys/X86_64_GENERIC/kernel.stripped ( 15705800 bytes, Sep 30 07:26)
  /boot/kernel/kernel installed by `make installkernel` (INSTALL_RC=0),
  booted as: DragonFly dfbsd 6.5-DEVELOPMENT #1: Wed Sep 30 07:26:18 UTC 2026

Objective binary evidence from the surviving obj tree:
  $ objdump -rd /usr/obj/.../mlx_pci.o | grep -c mlx_free
  2                              # patched: only the two legitimate paths
  $ objdump of /boot/kernel.old's mlx_pci_attach (stock):
  3                              # stock: includes the buggy mlx_pci.c:204 call

fix_run.log contains the patched-kernel validation run.