From david-b@pacbell.net Wed Aug 2 23:41:43 2006 Subject: USB: gadgetfs: protect ep_release with lock Date: Monday 26 June 2006 7:48 am From: Milan Svoboda To: linux-usb-devel@lists.sourceforge.net Message-Id: <200608022332.39208.david-b@pacbell.net> This patch adds mutex protection to ep_release. Signed-off-by: Milan Svoboda Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman --- drivers/usb/gadget/inode.c | 5 +++++ 1 file changed, 5 insertions(+) --- gregkh-2.6.orig/drivers/usb/gadget/inode.c +++ gregkh-2.6/drivers/usb/gadget/inode.c @@ -477,6 +477,10 @@ static int ep_release (struct inode *inode, struct file *fd) { struct ep_data *data = fd->private_data; + int value; + + if ((value = down_interruptible(&data->lock)) < 0) + return value; /* clean up if this can be reopened */ if (data->state != STATE_EP_UNBOUND) { @@ -485,6 +489,7 @@ ep_release (struct inode *inode, struct data->hs_desc.bDescriptorType = 0; usb_ep_disable(data->ep); } + up (&data->lock); put_ep (data); return 0; }