From patchwork Fri Mar 15 04:08:56 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Ming Lei X-Patchwork-Id: 227848 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 D7C7B2C00D6 for ; Fri, 15 Mar 2013 15:10:02 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751447Ab3COEJ7 (ORCPT ); Fri, 15 Mar 2013 00:09:59 -0400 Received: from mail-pb0-f52.google.com ([209.85.160.52]:57956 "EHLO mail-pb0-f52.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751243Ab3COEJ6 (ORCPT ); Fri, 15 Mar 2013 00:09:58 -0400 Received: by mail-pb0-f52.google.com with SMTP id ma3so3238242pbc.11 for ; Thu, 14 Mar 2013 21:09:58 -0700 (PDT) X-Received: by 10.68.196.168 with SMTP id in8mr12225766pbc.61.1363320598094; Thu, 14 Mar 2013 21:09:58 -0700 (PDT) Received: from localhost ([183.37.197.207]) by mx.google.com with ESMTPS id eh5sm6494790pbc.44.2013.03.14.21.09.51 (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Thu, 14 Mar 2013 21:09:57 -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 Subject: [PATCH v3 4/7] usbnet: cdc_mbim: comments on suspend failure Date: Fri, 15 Mar 2013 12:08:56 +0800 Message-Id: <1363320539-23012-5-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> MIME-Version: 1.0 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 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 Acked-by: Bjørn Mork Signed-off-by: Ming Lei --- drivers/net/usb/cdc_mbim.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/net/usb/cdc_mbim.c b/drivers/net/usb/cdc_mbim.c index 248d2dc..406a34d 100644 --- a/drivers/net/usb/cdc_mbim.c +++ b/drivers/net/usb/cdc_mbim.c @@ -332,6 +332,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;