aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMing Lei <ming.lei@canonical.com>2013-03-15 12:08:56 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-03-25 10:55:46 -0700
commit9a44312a79786c2fefac8e298a99826e9dc21f17 (patch)
tree6378cebe82c39e921507042c6a6b9b80e0048b43
parent37093b7017a281b85dc523fdcf99418a564e1cd4 (diff)
usbnet: cdc_mbim: comments on suspend failure
If suspend callback fails in system sleep context, usb core will ignore the failure and let system sleep go ahead further, so this patch comments on the case and requires that both usbnet_suspend() and subdriver->suspend() MUST return 0 in system sleep context. Acked-by: David S. Miller <davem@davemloft.net> Acked-by: Bjørn Mork <bjorn@mork.no> Signed-off-by: Ming Lei <ming.lei@canonical.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/net/usb/cdc_mbim.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/usb/cdc_mbim.c b/drivers/net/usb/cdc_mbim.c
index 16c84299729..673e3624713 100644
--- a/drivers/net/usb/cdc_mbim.c
+++ b/drivers/net/usb/cdc_mbim.c
@@ -323,6 +323,11 @@ static int cdc_mbim_suspend(struct usb_interface *intf, pm_message_t message)
goto error;
}
+ /*
+ * Both usbnet_suspend() and subdriver->suspend() MUST return 0
+ * in system sleep context, otherwise, the resume callback has
+ * to recover device from previous suspend failure.
+ */
ret = usbnet_suspend(intf, message);
if (ret < 0)
goto error;