diff options
Diffstat (limited to 'sys/dev')
| -rw-r--r-- | sys/dev/my/if_my.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/dev/my/if_my.c b/sys/dev/my/if_my.c index 70e8c34283a7..9ceccf9f1e69 100644 --- a/sys/dev/my/if_my.c +++ b/sys/dev/my/if_my.c @@ -1151,8 +1151,10 @@ my_list_rx_init(struct my_softc * sc) for (i = 0; i < MY_RX_LIST_CNT; i++) { cd->my_rx_chain[i].my_ptr = (struct my_desc *) & ld->my_rx_list[i]; - if (my_newbuf(sc, &cd->my_rx_chain[i]) == ENOBUFS) + if (my_newbuf(sc, &cd->my_rx_chain[i]) == ENOBUFS) { + MY_UNLOCK(sc); return (ENOBUFS); + } if (i == (MY_RX_LIST_CNT - 1)) { cd->my_rx_chain[i].my_nextdesc = &cd->my_rx_chain[0]; ld->my_rx_list[i].my_next = vtophys(&ld->my_rx_list[0]); |
