From: hayeswang Date: Mon, 23 Jan 2017 06:18:43 +0000 (+0800) Subject: r8152: don't execute runtime suspend if the tx is not empty X-Git-Tag: v4.4.47~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e674c70bafe78f96ca63b645b7881744c82b5586;p=thirdparty%2Fkernel%2Fstable.git r8152: don't execute runtime suspend if the tx is not empty [ Upstream commit 6a0b76c04ec157c88ca943debf78a8ee58469f2d ] Runtime suspend shouldn't be executed if the tx queue is not empty, because the device is not idle. Signed-off-by: Hayes Wang Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/net/usb/r8152.c b/drivers/net/usb/r8152.c index ed512a41c5c95..fbb1867ff25c9 100644 --- a/drivers/net/usb/r8152.c +++ b/drivers/net/usb/r8152.c @@ -3442,6 +3442,8 @@ static bool delay_autosuspend(struct r8152 *tp) */ if (!sw_linking && tp->rtl_ops.in_nway(tp)) return true; + else if (!skb_queue_empty(&tp->tx_queue)) + return true; else return false; }