DF-5546 / manifest.json
{ "finding_id": "DF-5546", "verdict": "reproduced / dos (kernel resource leak) / certain", "impact": "dos", "reproduce": { "build": "guest: cd /root/df5546 && make KERNBUILDDIR=/usr/obj/usr/src/sys/X86_64_GENERIC (boot QEMU with -device nec-usb-xhci,msi=on,msix=off AND /boot/loader.conf.local: hw.usb.xhci.use_polling=1)", "run": "guest: kldload /root/df5546/msileak.ko; sysctl hw.df5546=1", "expected": "pre-detach sc_irq_rid=1 sc_irq_res=0 sc_intr_hdl=0; device_detach returned 0; 'pci_release_msi(xhci0) probe returned 0 (LEAK: driver left MSI vectors allocated)' on the unpatched kernel; 'returned 19 (clean: nothing left to release)' on the fixed kernel. Note: -device qemu-xhci does NOT exercise the path (MSI-X only)." }, "kernel_refs": [ "sys/bus/u4b/controller/xhci_pci.c:234", "sys/bus/u4b/controller/xhci_pci.c:253", "sys/bus/u4b/controller/xhci_pci.c:366", "sys/bus/pci/pci.c:4365" ], "artifacts": [ "README.md", "VERDICT.md", "msileak.c", "Makefile", "build.sh", "run.sh", "build.log", "run.log", "run.fix.log", "run.hw-precondition.log", "fix_build.log", "fix.diff", "manifest.json", "verdict.json" ] } |