From 3765e40577c9240ac5314a33c46d85812e5f6331 Mon Sep 17 00:00:00 2001 From: Felipe Balbi Date: Thu, 12 Feb 2009 15:09:47 +0200 Subject: [PATCH] --- yaml --- r: 133532 b: refs/heads/master c: b2bdf3a789162aa6ff9c6f139bee9cc7954bc5b4 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/usb/gadget/composite.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index ce3af8eca580..26ae611c3305 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 6da9c99059bf24fb1faae6b9613bae64ea50c05e +refs/heads/master: b2bdf3a789162aa6ff9c6f139bee9cc7954bc5b4 diff --git a/trunk/drivers/usb/gadget/composite.c b/trunk/drivers/usb/gadget/composite.c index 5d11c291f1ad..40f1da77a006 100644 --- a/trunk/drivers/usb/gadget/composite.c +++ b/trunk/drivers/usb/gadget/composite.c @@ -149,16 +149,17 @@ int __init usb_add_function(struct usb_configuration *config, int usb_function_deactivate(struct usb_function *function) { struct usb_composite_dev *cdev = function->config->cdev; + unsigned long flags; int status = 0; - spin_lock(&cdev->lock); + spin_lock_irqsave(&cdev->lock, flags); if (cdev->deactivations == 0) status = usb_gadget_disconnect(cdev->gadget); if (status == 0) cdev->deactivations++; - spin_unlock(&cdev->lock); + spin_unlock_irqrestore(&cdev->lock, flags); return status; }