From patchwork Thu Mar 7 16:15:23 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ming Lei X-Patchwork-Id: 2233021 Return-Path: X-Original-To: patchwork-linux-input@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork2.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork2.kernel.org (Postfix) with ESMTP id AACAEDF223 for ; Thu, 7 Mar 2013 16:16:55 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933217Ab3CGQQu (ORCPT ); Thu, 7 Mar 2013 11:16:50 -0500 Received: from mail-pb0-f50.google.com ([209.85.160.50]:52984 "EHLO mail-pb0-f50.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933160Ab3CGQQt (ORCPT ); Thu, 7 Mar 2013 11:16:49 -0500 Received: by mail-pb0-f50.google.com with SMTP id up1so471303pbc.23 for ; Thu, 07 Mar 2013 08:16:49 -0800 (PST) X-Received: by 10.68.220.230 with SMTP id pz6mr54217799pbc.46.1362673009084; Thu, 07 Mar 2013 08:16:49 -0800 (PST) Received: from localhost ([183.37.214.52]) by mx.google.com with ESMTPS id ri1sm2165232pbc.16.2013.03.07.08.16.42 (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Thu, 07 Mar 2013 08:16:48 -0800 (PST) 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 v2 6/7] usbnet: smsc95xx: don't recover device if suspend fails in system sleep Date: Fri, 8 Mar 2013 00:15:23 +0800 Message-Id: <1362672924-22975-7-git-send-email-ming.lei@canonical.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1362672924-22975-1-git-send-email-ming.lei@canonical.com> References: <1362672924-22975-1-git-send-email-ming.lei@canonical.com> Sender: linux-input-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-input@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 the case. Cc: Steve Glendinning Signed-off-by: Ming Lei --- drivers/net/usb/smsc95xx.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/net/usb/smsc95xx.c b/drivers/net/usb/smsc95xx.c index e6d2dea..3f38ba8 100644 --- a/drivers/net/usb/smsc95xx.c +++ b/drivers/net/usb/smsc95xx.c @@ -1660,7 +1660,11 @@ static int smsc95xx_suspend(struct usb_interface *intf, pm_message_t message) ret = smsc95xx_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; }