Re: [PATCH] usb: gadget: f_fs: add missing spinlock and mutex unlock

From: Felipe Balbi
Date: Mon Mar 10 2014 - 16:00:51 EST


On Mon, Mar 10, 2014 at 02:05:47PM +0100, Michal Nazarewicz wrote:
> On Mon, Mar 10 2014, Robert Baldyga <r.baldyga@xxxxxxxxxxx> wrote:
> > This patch adds missing spin_unlock and mutex_unlock calls in
> > error handling code.
> >
> > Signed-off-by: Robert Baldyga <r.baldyga@xxxxxxxxxxx>
>
> Acked-by: Michal Nazarewicz <mina86@xxxxxxxxxx>

Greg, here's another one you can pick. It's also a coccicheck fix.

Acked-by: Felipe Balbi <balbi@xxxxxx>

> > ---
> > drivers/usb/gadget/f_fs.c | 8 ++++++--
> > 1 file changed, 6 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/usb/gadget/f_fs.c b/drivers/usb/gadget/f_fs.c
> > index b7d273a..d6bd0a3 100644
> > --- a/drivers/usb/gadget/f_fs.c
> > +++ b/drivers/usb/gadget/f_fs.c
> > @@ -802,7 +802,7 @@ static ssize_t ffs_epfile_io(struct file *file, struct ffs_io_data *io_data)
> > if (io_data->aio) {
> > req = usb_ep_alloc_request(ep->ep, GFP_KERNEL);
> > if (unlikely(!req))
> > - goto error;
> > + goto error_lock;
> >
> > req->buf = data;
> > req->length = io_data->len;
> > @@ -817,7 +817,7 @@ static ssize_t ffs_epfile_io(struct file *file, struct ffs_io_data *io_data)
> > ret = usb_ep_queue(ep->ep, req, GFP_ATOMIC);
> > if (unlikely(ret)) {
> > usb_ep_free_request(ep->ep, req);
> > - goto error;
> > + goto error_lock;
> > }
> > ret = -EIOCBQUEUED;
> >
> > @@ -863,6 +863,10 @@ static ssize_t ffs_epfile_io(struct file *file, struct ffs_io_data *io_data)
> >
> > mutex_unlock(&epfile->mutex);
> > return ret;
> > +
> > +error_lock:
> > + spin_unlock_irq(&epfile->ffs->eps_lock);
> > + mutex_unlock(&epfile->mutex);
> > error:
> > kfree(data);
> > return ret;
> > --
> > 1.7.9.5
> >
>
> --
> Best regards, _ _
> .o. | Liege of Serenely Enlightened Majesty of o' \,=./ `o
> ..o | Computer Science, MichaÅ âmina86â Nazarewicz (o o)
> ooo +--<mpn@xxxxxxxxxx>--<xmpp:mina86@xxxxxxxxxx>--ooO--(_)--Ooo--





--
balbi

Attachment: signature.asc
Description: Digital signature