DF-1007 / fix.diff
diff --git a/sys/bus/firewire/fwohci.c b/sys/bus/firewire/fwohci.c --- a/sys/bus/firewire/fwohci.c +++ b/sys/bus/firewire/fwohci.c @@ -1334,7 +1334,10 @@ } db_tr = dbch->top; for (idb = 0; idb < dbch->ndb; idb ++) { - fwohci_add_tx_buf(dbch, db_tr, idb); + if (fwohci_add_tx_buf(dbch, db_tr, idb) != 0) { + err = ENOMEM; + return err; + } if(STAILQ_NEXT(db_tr, link) == NULL){ break; } @@ -1403,7 +1406,10 @@ } db_tr = dbch->top; for (idb = 0; idb < dbch->ndb; idb ++) { - fwohci_add_rx_buf(dbch, db_tr, idb, &sc->dummy_dma); + if (fwohci_add_rx_buf(dbch, db_tr, idb, &sc->dummy_dma) != 0) { + err = ENOMEM; + return err; + } if (STAILQ_NEXT(db_tr, link) == NULL) break; db = db_tr->db; |