From patchwork Fri Mar 15 04:08:59 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ming Lei X-Patchwork-Id: 227851 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id E9F372C00D7 for ; Fri, 15 Mar 2013 15:10:36 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751581Ab3COEKb (ORCPT ); Fri, 15 Mar 2013 00:10:31 -0400 Received: from mail-pb0-f53.google.com ([209.85.160.53]:52016 "EHLO mail-pb0-f53.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751296Ab3COEK3 (ORCPT ); Fri, 15 Mar 2013 00:10:29 -0400 Received: by mail-pb0-f53.google.com with SMTP id un1so3206992pbc.40 for ; Thu, 14 Mar 2013 21:10:29 -0700 (PDT) X-Received: by 10.68.135.38 with SMTP id pp6mr12424183pbb.111.1363320628972; Thu, 14 Mar 2013 21:10:28 -0700 (PDT) Received: from localhost ([183.37.197.207]) by mx.google.com with ESMTPS id hs8sm6509259pbc.27.2013.03.14.21.10.23 (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Thu, 14 Mar 2013 21:10:28 -0700 (PDT) From: Ming Lei To: "David S. Miller" , Greg Kroah-Hartman , Jiri Kosina Cc: Alan Stern , Oliver Neukum , netdev@vger.kernel.org, linux-usb@vger.kernel.org, linux-input@vger.kernel.org, Ming Lei , Steve Glendinning Subject: [PATCH v3 7/7] usbnet: smsc75xx: don't recover device if suspend fails in system sleep Date: Fri, 15 Mar 2013 12:08:59 +0800 Message-Id: <1363320539-23012-8-git-send-email-ming.lei@canonical.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1363320539-23012-1-git-send-email-ming.lei@canonical.com> References: <1363320539-23012-1-git-send-email-ming.lei@canonical.com> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org If suspend callback fails in system sleep context, usb core will ignore the failure and let system sleep go ahead further, so this patch doesn't recover device under this situation. Also add comments on this case. Acked-by: David S. Miller Cc: Steve Glendinning Signed-off-by: Ming Lei --- drivers/net/usb/smsc75xx.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/net/usb/smsc75xx.c b/drivers/net/usb/smsc75xx.c index 9abe517..21b607a 100644 --- a/drivers/net/usb/smsc75xx.c +++ b/drivers/net/usb/smsc75xx.c @@ -2011,7 +2011,11 @@ static int smsc75xx_suspend(struct usb_interface *intf, pm_message_t message) ret = smsc75xx_enter_suspend0(dev); done: - if (ret) + /* + * TODO: resume() might need to handle the suspend failure + * in system sleep + */ + if (ret && PMSG_IS_AUTO(message)) usbnet_resume(intf); return ret; }