Re: [RESEND/PATCH] usb: gadget: dummy_hcd: Fix error path

From: Rahul Ruikar
Date: Thu Oct 07 2010 - 00:12:51 EST


Greg,

Kindly include this patch.

- Rahul Ruikar





On 7 October 2010 09:40, Rahul Ruikar <rahul.ruikar@xxxxxxxxx> wrote:
> In function dummy_udc_probe()
> call put_device() when device_register() fails.
> also usb_get_hcd() put before device_register() after review comment
> from Alan Stern.
>
> Signed-off-by: Rahul Ruikar <rahul.ruikar@xxxxxxxxx>
> ---
>  drivers/usb/gadget/dummy_hcd.c |    8 +++++---
>  1 files changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/usb/gadget/dummy_hcd.c b/drivers/usb/gadget/dummy_hcd.c
> index dc65462..9b30483 100644
> --- a/drivers/usb/gadget/dummy_hcd.c
> +++ b/drivers/usb/gadget/dummy_hcd.c
> @@ -874,6 +874,8 @@ static int dummy_udc_probe (struct platform_device *pdev)
>        struct dummy    *dum = the_controller;
>        int             rc;
>
> +       usb_get_hcd(dummy_to_hcd(dum));
> +
>        dum->gadget.name = gadget_name;
>        dum->gadget.ops = &dummy_ops;
>        dum->gadget.is_dualspeed = 1;
> @@ -885,10 +887,10 @@ static int dummy_udc_probe (struct platform_device *pdev)
>        dum->gadget.dev.parent = &pdev->dev;
>        dum->gadget.dev.release = dummy_gadget_release;
>        rc = device_register (&dum->gadget.dev);
> -       if (rc < 0)
> +       if (rc < 0) {
> +               put_device(&dum->gadget.dev);
>                return rc;
> -
> -       usb_get_hcd (dummy_to_hcd (dum));
> +       }
>
>        platform_set_drvdata (pdev, dum);
>        rc = device_create_file (&dum->gadget.dev, &dev_attr_function);
> --
> 1.7.2.3
>
>
--
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/