On Fri, Nov 17, 2017 at 09:35:51AM -0700, Jerry Snitselaar wrote:
> Should this skip warning that the rebind failed if device_attach
> is returning -EPROBE_DEFER? If I do something like 'rtcwake -m mem -s 30'
> on a laptop I have here I will see a couple "rebind failed: -517" messages
> as it comes back out of suspend. Since the device probe eventually happens
> once probes are not deferred wondering if this warning this be given in that
> case.
> 
> 
> diff --git a/drivers/usb/core/driver.c b/drivers/usb/core/driver.c
> index 64262a9a8829..5d3408010112 100644
> --- a/drivers/usb/core/driver.c
> +++ b/drivers/usb/core/driver.c
> @@ -1070,7 +1070,7 @@ static void usb_rebind_intf(struct usb_interface *intf)
>        if (!intf->dev.power.is_prepared) {
>                intf->needs_binding = 0;
>                rc = device_attach(&intf->dev);
> -               if (rc < 0)
> +               if (rc < 0 && rc != -EPROBE_DEFER)
>                        dev_warn(&intf->dev, "rebind failed: %d\n", rc);
>        }
> }

What USB driver is returning -EPROBE_DEFER to cause this to be an issue?
Shouldn't that really only be for "platform" drivers and the like?  USB
interface drivers should all be "self-contained" within reason.

thanks,

greg k-h

Reply via email to