Module Name:    src
Committed By:   skrll
Date:           Mon Dec 28 10:15:09 UTC 2015

Modified Files:
        src/sys/dev/usb [nick-nhusb]: uatp.c ubt.c ugen.c uhid.c uhidev.c
            umass.c umidi.c

Log Message:
Use IPL_SOFTUSB instead of IPL_USB appropriately.  Transfer completions
are executed as a softint and so this is the priority level required.


To generate a diff of this commit:
cvs rdiff -u -r1.10.4.6 -r1.10.4.7 src/sys/dev/usb/uatp.c
cvs rdiff -u -r1.51.4.7 -r1.51.4.8 src/sys/dev/usb/ubt.c
cvs rdiff -u -r1.126.2.12 -r1.126.2.13 src/sys/dev/usb/ugen.c
cvs rdiff -u -r1.92.4.7 -r1.92.4.8 src/sys/dev/usb/uhid.c
cvs rdiff -u -r1.61.4.10 -r1.61.4.11 src/sys/dev/usb/uhidev.c
cvs rdiff -u -r1.149.2.10 -r1.149.2.11 src/sys/dev/usb/umass.c
cvs rdiff -u -r1.65.14.9 -r1.65.14.10 src/sys/dev/usb/umidi.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/usb/uatp.c
diff -u src/sys/dev/usb/uatp.c:1.10.4.6 src/sys/dev/usb/uatp.c:1.10.4.7
--- src/sys/dev/usb/uatp.c:1.10.4.6	Tue Sep 29 11:38:29 2015
+++ src/sys/dev/usb/uatp.c	Mon Dec 28 10:15:09 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: uatp.c,v 1.10.4.6 2015/09/29 11:38:29 skrll Exp $	*/
+/*	$NetBSD: uatp.c,v 1.10.4.7 2015/12/28 10:15:09 skrll Exp $	*/
 
 /*-
  * Copyright (c) 2011-2014 The NetBSD Foundation, Inc.
@@ -146,7 +146,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uatp.c,v 1.10.4.6 2015/09/29 11:38:29 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uatp.c,v 1.10.4.7 2015/12/28 10:15:09 skrll Exp $");
 
 #include <sys/types.h>
 #include <sys/param.h>
@@ -2014,7 +2014,7 @@ tap_initialize(struct uatp_softc *sc)
 {
 	callout_init(&sc->sc_untap_callout, 0);
 	callout_setfunc(&sc->sc_untap_callout, untap_callout, sc);
-	mutex_init(&sc->sc_tap_mutex, MUTEX_DEFAULT, IPL_USB);
+	mutex_init(&sc->sc_tap_mutex, MUTEX_DEFAULT, IPL_SOFTUSB);
 	cv_init(&sc->sc_tap_cv, "uatptap");
 }
 

Index: src/sys/dev/usb/ubt.c
diff -u src/sys/dev/usb/ubt.c:1.51.4.7 src/sys/dev/usb/ubt.c:1.51.4.8
--- src/sys/dev/usb/ubt.c:1.51.4.7	Mon Dec 28 09:26:33 2015
+++ src/sys/dev/usb/ubt.c	Mon Dec 28 10:15:09 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: ubt.c,v 1.51.4.7 2015/12/28 09:26:33 skrll Exp $	*/
+/*	$NetBSD: ubt.c,v 1.51.4.8 2015/12/28 10:15:09 skrll Exp $	*/
 
 /*-
  * Copyright (c) 2006 Itronix Inc.
@@ -67,7 +67,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ubt.c,v 1.51.4.7 2015/12/28 09:26:33 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ubt.c,v 1.51.4.8 2015/12/28 10:15:09 skrll Exp $");
 
 #include <sys/param.h>
 #include <sys/device.h>
@@ -276,7 +276,7 @@ static const struct hci_if ubt_hci = {
 	.output_acl = ubt_xmit_acl,
 	.output_sco = ubt_xmit_sco,
 	.get_stats = ubt_stats,
-	.ipl = IPL_USB,		/* IPL_SOFTUSB ??? */
+	.ipl = IPL_SOFTUSB,
 };
 
 /*******************************************************************************

Index: src/sys/dev/usb/ugen.c
diff -u src/sys/dev/usb/ugen.c:1.126.2.12 src/sys/dev/usb/ugen.c:1.126.2.13
--- src/sys/dev/usb/ugen.c:1.126.2.12	Mon Dec 28 09:26:33 2015
+++ src/sys/dev/usb/ugen.c	Mon Dec 28 10:15:09 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: ugen.c,v 1.126.2.12 2015/12/28 09:26:33 skrll Exp $	*/
+/*	$NetBSD: ugen.c,v 1.126.2.13 2015/12/28 10:15:09 skrll Exp $	*/
 
 /*
  * Copyright (c) 1998, 2004 The NetBSD Foundation, Inc.
@@ -37,7 +37,7 @@
 
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ugen.c,v 1.126.2.12 2015/12/28 09:26:33 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ugen.c,v 1.126.2.13 2015/12/28 10:15:09 skrll Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_compat_netbsd.h"
@@ -222,7 +222,7 @@ ugen_attach(device_t parent, device_t se
 	aprint_naive("\n");
 	aprint_normal("\n");
 
-	mutex_init(&sc->sc_lock, MUTEX_DEFAULT, IPL_USB);
+	mutex_init(&sc->sc_lock, MUTEX_DEFAULT, IPL_SOFTUSB);
 	cv_init(&sc->sc_detach_cv, "ugendet");
 
 	devinfop = usbd_devinfo_alloc(uaa->uaa_device, 0);

Index: src/sys/dev/usb/uhid.c
diff -u src/sys/dev/usb/uhid.c:1.92.4.7 src/sys/dev/usb/uhid.c:1.92.4.8
--- src/sys/dev/usb/uhid.c:1.92.4.7	Tue Sep 29 11:38:29 2015
+++ src/sys/dev/usb/uhid.c	Mon Dec 28 10:15:09 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: uhid.c,v 1.92.4.7 2015/09/29 11:38:29 skrll Exp $	*/
+/*	$NetBSD: uhid.c,v 1.92.4.8 2015/12/28 10:15:09 skrll Exp $	*/
 
 /*
  * Copyright (c) 1998, 2004, 2008, 2012 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uhid.c,v 1.92.4.7 2015/09/29 11:38:29 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uhid.c,v 1.92.4.8 2015/12/28 10:15:09 skrll Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_compat_netbsd.h"
@@ -186,7 +186,7 @@ uhid_attach(device_t parent, device_t se
 	       sc->sc_isize, sc->sc_osize, sc->sc_fsize);
 
 	mutex_init(&sc->sc_access_lock, MUTEX_DEFAULT, IPL_NONE);
-	mutex_init(&sc->sc_lock, MUTEX_DEFAULT, IPL_USB);
+	mutex_init(&sc->sc_lock, MUTEX_DEFAULT, IPL_SOFTUSB);
 	cv_init(&sc->sc_cv, "uhidrea");
 	cv_init(&sc->sc_detach_cv, "uhiddet");
 

Index: src/sys/dev/usb/uhidev.c
diff -u src/sys/dev/usb/uhidev.c:1.61.4.10 src/sys/dev/usb/uhidev.c:1.61.4.11
--- src/sys/dev/usb/uhidev.c:1.61.4.10	Tue Oct  6 21:32:15 2015
+++ src/sys/dev/usb/uhidev.c	Mon Dec 28 10:15:09 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: uhidev.c,v 1.61.4.10 2015/10/06 21:32:15 skrll Exp $	*/
+/*	$NetBSD: uhidev.c,v 1.61.4.11 2015/12/28 10:15:09 skrll Exp $	*/
 
 /*
  * Copyright (c) 2001, 2012 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: uhidev.c,v 1.61.4.10 2015/10/06 21:32:15 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uhidev.c,v 1.61.4.11 2015/12/28 10:15:09 skrll Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -136,7 +136,7 @@ uhidev_attach(device_t parent, device_t 
 	aprint_naive("\n");
 	aprint_normal("\n");
 
-	mutex_init(&sc->sc_lock, MUTEX_DEFAULT, IPL_USB);
+	mutex_init(&sc->sc_lock, MUTEX_DEFAULT, IPL_SOFTUSB);
 
 	id = usbd_get_interface_descriptor(iface);
 

Index: src/sys/dev/usb/umass.c
diff -u src/sys/dev/usb/umass.c:1.149.2.10 src/sys/dev/usb/umass.c:1.149.2.11
--- src/sys/dev/usb/umass.c:1.149.2.10	Mon Dec 28 09:26:33 2015
+++ src/sys/dev/usb/umass.c	Mon Dec 28 10:15:09 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: umass.c,v 1.149.2.10 2015/12/28 09:26:33 skrll Exp $	*/
+/*	$NetBSD: umass.c,v 1.149.2.11 2015/12/28 10:15:09 skrll Exp $	*/
 
 /*
  * Copyright (c) 2003 The NetBSD Foundation, Inc.
@@ -124,7 +124,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: umass.c,v 1.149.2.10 2015/12/28 09:26:33 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: umass.c,v 1.149.2.11 2015/12/28 10:15:09 skrll Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -337,7 +337,7 @@ umass_attach(device_t parent, device_t s
 	aprint_naive("\n");
 	aprint_normal("\n");
 
-	mutex_init(&sc->sc_lock, MUTEX_DEFAULT, IPL_USB);
+	mutex_init(&sc->sc_lock, MUTEX_DEFAULT, IPL_SOFTUSB);
 	cv_init(&sc->sc_detach_cv, "umassdet");
 
 	devinfop = usbd_devinfo_alloc(uiaa->uiaa_device, 0);

Index: src/sys/dev/usb/umidi.c
diff -u src/sys/dev/usb/umidi.c:1.65.14.9 src/sys/dev/usb/umidi.c:1.65.14.10
--- src/sys/dev/usb/umidi.c:1.65.14.9	Mon Dec 28 09:26:33 2015
+++ src/sys/dev/usb/umidi.c	Mon Dec 28 10:15:09 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: umidi.c,v 1.65.14.9 2015/12/28 09:26:33 skrll Exp $	*/
+/*	$NetBSD: umidi.c,v 1.65.14.10 2015/12/28 10:15:09 skrll Exp $	*/
 
 /*
  * Copyright (c) 2001, 2012, 2014 The NetBSD Foundation, Inc.
@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: umidi.c,v 1.65.14.9 2015/12/28 09:26:33 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: umidi.c,v 1.65.14.10 2015/12/28 10:15:09 skrll Exp $");
 
 #include <sys/types.h>
 #include <sys/param.h>
@@ -360,7 +360,7 @@ umidi_attach(device_t parent, device_t s
 	aprint_normal_dev(self, "");
 	umidi_print_quirk(sc->sc_quirk);
 
-	mutex_init(&sc->sc_lock, MUTEX_DEFAULT, IPL_USB);
+	mutex_init(&sc->sc_lock, MUTEX_DEFAULT, IPL_SOFTUSB);
 	cv_init(&sc->sc_cv, "umidopcl");
 	cv_init(&sc->sc_detach_cv, "umidetcv");
 	sc->sc_refcnt = 0;
@@ -1214,11 +1214,11 @@ unbind_all_jacks(struct umidi_softc *sc)
 {
 	int i;
 
-	mutex_spin_enter(&sc->sc_lock);
+	mutex_enter(&sc->sc_lock);
 	if (sc->sc_mididevs)
 		for (i = 0; i < sc->sc_num_mididevs; i++)
 			unbind_jacks_from_mididev(&sc->sc_mididevs[i]);
-	mutex_spin_exit(&sc->sc_lock);
+	mutex_exit(&sc->sc_lock);
 }
 
 static usbd_status
@@ -1387,9 +1387,9 @@ close_in_jack(struct umidi_jack *jack)
 			 * the abort operation.  This is safe as this
 			 * either closing or dying will be set proerly.
 			 */
-			mutex_spin_exit(&sc->sc_lock);
+			mutex_exit(&sc->sc_lock);
 			usbd_abort_pipe(jack->endpoint->pipe);
-			mutex_spin_enter(&sc->sc_lock);
+			mutex_enter(&sc->sc_lock);
 		}
 	}
 }
@@ -1417,12 +1417,12 @@ detach_mididev(struct umidi_mididev *mid
 	if (!sc)
 		return USBD_NO_ADDR;
 
-	mutex_spin_enter(&sc->sc_lock);
+	mutex_enter(&sc->sc_lock);
 	if (mididev->opened) {
 		umidi_close(mididev);
 	}
 	unbind_jacks_from_mididev(mididev);
-	mutex_spin_exit(&sc->sc_lock);
+	mutex_exit(&sc->sc_lock);
 
 	if (mididev->mdev != NULL)
 		config_detach(mididev->mdev, flags);

Reply via email to