DragonFlyBSD Kernel Audit
DF-1098 / fix.diff
← back to finding ↓ download raw
--- /tmp/orig/bus/firewire/fwohci_pci.c	2026-07-23 11:54:56.744810000 +0000
+++ bus/firewire/fwohci_pci.c	2026-07-23 11:58:50.987193000 +0000
@@ -320,6 +320,7 @@
 	if (err != 0) {
 		kprintf("fwohci_pci_attach: Could not allocate DMA tag "
 			"- error %d\n", err);
+			fwohci_pci_detach(self);
 			return (ENOMEM);
 	}
 
@@ -379,6 +380,8 @@
 		sc->bsh = 0;
 	}
 
+	if (sc->fc.dmat)
+		bus_dma_tag_destroy(sc->fc.dmat);
 	fwohci_detach(sc, self);
 	crit_exit();