2017-12-04 12:03:27

by Mathias Nyman

[permalink] [raw]
Subject: [PATCH] usb: Don't print a warning if interface driver rebind is deferred at resume

Interface drivers like btusb that don't support reset-resume will be
rebound at resume if port was reset. Rebind is done during the pm_ops
.complete callback when probe returns EPROBE_DEFER as default.

Remove the "rebind failed: -517" message.
Device probe will eventually take place later.

[one-liner by Jerry Snitselaar posted in a mailing list question -Mathias]
Suggested-by: Jerry Snitselaar <[email protected]>
Signed-off-by: Mathias Nyman <[email protected]>
---
drivers/usb/core/driver.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/core/driver.c b/drivers/usb/core/driver.c
index 64262a9a..5d34080 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);
}
}
--
2.7.4


2017-12-04 18:45:25

by Jerry Snitselaar

[permalink] [raw]
Subject: Re: [PATCH] usb: Don't print a warning if interface driver rebind is deferred at resume

On Mon Dec 04 17, Mathias Nyman wrote:
>Interface drivers like btusb that don't support reset-resume will be
>rebound at resume if port was reset. Rebind is done during the pm_ops
>.complete callback when probe returns EPROBE_DEFER as default.
>
>Remove the "rebind failed: -517" message.
>Device probe will eventually take place later.
>
>[one-liner by Jerry Snitselaar posted in a mailing list question -Mathias]
>Suggested-by: Jerry Snitselaar <[email protected]>
>Signed-off-by: Mathias Nyman <[email protected]>
>---
> drivers/usb/core/driver.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>diff --git a/drivers/usb/core/driver.c b/drivers/usb/core/driver.c
>index 64262a9a..5d34080 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);
> }
> }
>--
>2.7.4
>

Thanks for sending this. It looks like my filters sent the ensuing
conversation off into never-never land or I wasn't cc'd and just
missed it in the mailing lists.