diff options
Diffstat (limited to 'sys/dev')
-rw-r--r-- | sys/dev/usb/if_mos.c | 3 | ||||
-rw-r--r-- | sys/dev/usb/if_upgt.c | 7 | ||||
-rw-r--r-- | sys/dev/usb/udl.c | 3 |
3 files changed, 9 insertions, 4 deletions
diff --git a/sys/dev/usb/if_mos.c b/sys/dev/usb/if_mos.c index e05b559b3cf..c97b6455f87 100644 --- a/sys/dev/usb/if_mos.c +++ b/sys/dev/usb/if_mos.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_mos.c,v 1.29 2015/04/10 08:41:43 mpi Exp $ */ +/* $OpenBSD: if_mos.c,v 1.30 2015/05/02 10:44:29 jsg Exp $ */ /* * Copyright (c) 2008 Johann Christian Rode <jcrode@gmx.net> @@ -702,6 +702,7 @@ mos_attach(struct device *parent, struct device *self, void *aux) if (err) { printf("%s: couldn't get MAC address\n", sc->mos_dev.dv_xname); + splx(s); return; } bcopy(eaddr, (char *)&sc->arpcom.ac_enaddr, ETHER_ADDR_LEN); diff --git a/sys/dev/usb/if_upgt.c b/sys/dev/usb/if_upgt.c index dd1e0de0b78..381ae287fb3 100644 --- a/sys/dev/usb/if_upgt.c +++ b/sys/dev/usb/if_upgt.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_upgt.c,v 1.68 2015/04/13 08:45:48 mpi Exp $ */ +/* $OpenBSD: if_upgt.c,v 1.69 2015/05/02 10:44:29 jsg Exp $ */ /* * Copyright (c) 2007 Marcus Glocker <mglocker@openbsd.org> @@ -1496,8 +1496,10 @@ upgt_tx_task(void *arg) if (wh->i_fc[1] & IEEE80211_FC1_PROTECTED) { k = ieee80211_get_txkey(ic, wh, ic->ic_bss); - if ((m = ieee80211_encrypt(ic, m, k)) == NULL) + if ((m = ieee80211_encrypt(ic, m, k)) == NULL) { + splx(s); return; + } /* in case packet header moved, reset pointer */ wh = mtod(m, struct ieee80211_frame *); @@ -1581,6 +1583,7 @@ upgt_tx_task(void *arg) if (error != 0 && error != USBD_IN_PROGRESS) { printf("%s: could not transmit TX data URB!\n", sc->sc_dev.dv_xname); + splx(s); return; } diff --git a/sys/dev/usb/udl.c b/sys/dev/usb/udl.c index 70122084a95..0ca8f119b20 100644 --- a/sys/dev/usb/udl.c +++ b/sys/dev/usb/udl.c @@ -1,4 +1,4 @@ -/* $OpenBSD: udl.c,v 1.82 2015/03/14 03:38:49 jsg Exp $ */ +/* $OpenBSD: udl.c,v 1.83 2015/05/02 10:44:29 jsg Exp $ */ /* * Copyright (c) 2009 Marcus Glocker <mglocker@openbsd.org> @@ -1836,6 +1836,7 @@ udl_cmd_send_async(struct udl_softc *sc) } if (i == UDL_CMD_XFER_COUNT) { /* this shouldn't happen */ + splx(s); return (USBD_IN_USE); } cx = &sc->sc_cmd_xfer[i]; |