From 5667a066a305bccc0cd80443f1646126ebe29bb0 Mon Sep 17 00:00:00 2001 From: Marc Kleine-Budde Date: Mon, 10 Oct 2011 18:38:05 +0200 Subject: [PATCH] --- yaml --- r: 275807 b: refs/heads/master c: 001428e4871d6c62f5e16c62df681624d8b480c1 h: refs/heads/master i: 275805: e62a17ca1f146b4b2951b81900e0bba42d88f37e 275803: 86a10d03c530daaf5379d57e6591b7119139c2dd 275799: 1fafbab90b165d0453dca67833e6ac924bcabc10 275791: 9e1bf0d678566029a1ceb8a17d12a0d02c73d97e 275775: 6bf27559ec882c9efc4b616d92538169086e652e v: v3 --- [refs] | 2 +- trunk/drivers/usb/gadget/inode.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index fe7becb463e0..f9374042564b 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 74203de067ae5c71526168b597088022836e31d3 +refs/heads/master: 001428e4871d6c62f5e16c62df681624d8b480c1 diff --git a/trunk/drivers/usb/gadget/inode.c b/trunk/drivers/usb/gadget/inode.c index a392ec0d2d51..6ccae2707e59 100644 --- a/trunk/drivers/usb/gadget/inode.c +++ b/trunk/drivers/usb/gadget/inode.c @@ -1730,8 +1730,9 @@ static void gadgetfs_disconnect (struct usb_gadget *gadget) { struct dev_data *dev = get_gadget_data (gadget); + unsigned long flags; - spin_lock (&dev->lock); + spin_lock_irqsave (&dev->lock, flags); if (dev->state == STATE_DEV_UNCONNECTED) goto exit; dev->state = STATE_DEV_UNCONNECTED; @@ -1740,7 +1741,7 @@ gadgetfs_disconnect (struct usb_gadget *gadget) next_event (dev, GADGETFS_DISCONNECT); ep0_readable (dev); exit: - spin_unlock (&dev->lock); + spin_unlock_irqrestore (&dev->lock, flags); } static void