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.