summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoruaa <uaa@openbsd.org>2015-03-27 19:20:56 +0000
committeruaa <uaa@openbsd.org>2015-03-27 19:20:56 +0000
commit6e4f98d38fe6bab36d186c8f52a660f60e937d89 (patch)
tree6e1d0e05c9bb71b302a37faf69b089c972b376fa
parentMove man.conf from /etc to /etc/examples, deleting what's no longer supported. (diff)
downloadwireguard-openbsd-6e4f98d38fe6bab36d186c8f52a660f60e937d89.tar.xz
wireguard-openbsd-6e4f98d38fe6bab36d186c8f52a660f60e937d89.zip
simply do if_input() between splnet() and splx(), like other drivers
(such as if_udav.c). ok by mpi@
-rw-r--r--sys/dev/usb/if_url.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/sys/dev/usb/if_url.c b/sys/dev/usb/if_url.c
index 6124ddad1b8..82fd68d2bb1 100644
--- a/sys/dev/usb/if_url.c
+++ b/sys/dev/usb/if_url.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_url.c,v 1.73 2015/03/14 03:38:49 jsg Exp $ */
+/* $OpenBSD: if_url.c,v 1.74 2015/03/27 19:20:56 uaa Exp $ */
/* $NetBSD: if_url.c,v 1.6 2002/09/29 10:19:21 martin Exp $ */
/*
* Copyright (c) 2001, 2002
@@ -972,18 +972,16 @@ url_rxeof(struct usbd_xfer *xfer, void *priv, usbd_status status)
m->m_pkthdr.len = m->m_len = total_len;
ml_enqueue(&ml, m);
- s = splnet();
-
if (url_newbuf(sc, c, NULL) == ENOBUFS) {
ifp->if_ierrors++;
- goto done1;
+ goto done;
}
DPRINTF(("%s: %s: deliver %d\n", sc->sc_dev.dv_xname,
__func__, m->m_len));
- if_input(ifp, &ml);
- done1:
+ s = splnet();
+ if_input(ifp, &ml);
splx(s);
done: