From 3827cf56b00ca00fc161a595b725a2456190dd23 Mon Sep 17 00:00:00 2001 From: Miod Vallat Date: Sat, 5 Sep 2009 10:25:56 +0000 Subject: Make sure ehci_open() invokes ehci_device_setintr() at splusb; found with splassert. --- sys/dev/usb/ehci.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'sys') diff --git a/sys/dev/usb/ehci.c b/sys/dev/usb/ehci.c index 974083b0de7..d4811bfb16d 100644 --- a/sys/dev/usb/ehci.c +++ b/sys/dev/usb/ehci.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ehci.c,v 1.101 2009/07/24 08:15:38 blambert Exp $ */ +/* $OpenBSD: ehci.c,v 1.102 2009/09/05 10:25:55 miod Exp $ */ /* $NetBSD: ehci.c,v 1.66 2004/06/30 03:11:56 mycroft Exp $ */ /* @@ -1592,7 +1592,10 @@ ehci_open(usbd_pipe_handle pipe) ival = pipe->interval; if (ival == USBD_DEFAULT_INTERVAL) ival = ed->bInterval; - return (ehci_device_setintr(sc, sqh, ival)); + s = splusb(); + err = ehci_device_setintr(sc, sqh, ival); + splx(s); + return (err); case UE_ISOCHRONOUS: pipe->methods = &ehci_device_isoc_methods; if (ed->bInterval == 0 || ed->bInterval > 16) { -- cgit v1.2.3