DragonFlyBSD Kernel Audit
DF-1276 / fix.diff
← back to finding ↓ download raw
diff --git a/sys/dev/netif/sk/if_sk.c b/sys/dev/netif/sk/if_sk.c
--- a/sys/dev/netif/sk/if_sk.c
+++ b/sys/dev/netif/sk/if_sk.c
@@ -2709,7 +2709,7 @@
 		      SK_ADDR_HI(sc_if->sk_rdata.sk_tx_ring_paddr));
 
 	/* Init descriptors */
-	if (sk_init_rx_ring(sc_if) == ENOBUFS) {
+	if (sk_init_rx_ring(sc_if) != 0) {
 		if_printf(ifp, "initialization failed: "
 			  "no memory for rx buffers\n");
 		sk_stop(sc_if);
@@ -3119,7 +3119,7 @@
 
 			for (j = 0; j < i; ++j) {
 				bus_dmamap_destroy(cd->sk_tx_dtag,
-						   cd->sk_tx_dmap[i]);
+						   cd->sk_tx_dmap[j]);
 			}
 			bus_dma_tag_destroy(cd->sk_tx_dtag);
 			cd->sk_tx_dtag = NULL;