Re: [PATCH] usb: musb: musb_gadget: Fix error path

From: Ming Lei
Date: Sat Oct 02 2010 - 03:54:47 EST


2010/10/2 Rahul Ruikar <rahul.ruikar@xxxxxxxxx>:
> In function musb_gadget_setup()
> call put_device() when device_register() fails.
>
> Signed-off-by: Rahul Ruikar <rahul.ruikar@xxxxxxxxx>
> ---
>  drivers/usb/musb/musb_gadget.c |    4 +++-
>  1 files changed, 3 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/usb/musb/musb_gadget.c b/drivers/usb/musb/musb_gadget.c
> index d065e23..9fdd852 100644
> --- a/drivers/usb/musb/musb_gadget.c
> +++ b/drivers/usb/musb/musb_gadget.c
> @@ -1676,8 +1676,10 @@ int __init musb_gadget_setup(struct musb *musb)
>        musb_platform_try_idle(musb, 0);
>
>        status = device_register(&musb->g.dev);
> -       if (status != 0)
> +       if (status != 0) {
> +               put_device(&musb->g.dev);

This doe make sense, otherwise device_private may be leaked.

>                the_gadget = NULL;
> +       }
>        return status;
>  }
>
> --
> 1.7.2.3
>
>

Acked-by: Ming Lei <tom.leiming@xxxxxxxxx>

--
Lei Ming
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/