public inbox for netdev@vger.kernel.org 
 help / color / mirror / Atom feed
From: "Bjørn Mork" <bjorn@mork•no>
To: Ming Lei <ming.lei@canonical•com>
Cc: "David S. Miller" <davem@davemloft•net>,
	Greg Kroah-Hartman <gregkh@linuxfoundation•org>,
	Jiri Kosina <jkosina@suse•cz>,
	Alan Stern <stern@rowland•harvard.edu>,
	Oliver Neukum <oneukum@suse•de>,
	netdev@vger•kernel.org, linux-usb@vger•kernel.org,
	linux-input@vger•kernel.org
Subject: Re: [PATCH 4/7] usbnet: cdc_mbim: don't recover device if suspend fails in system sleep
Date: Tue, 05 Mar 2013 16:03:21 +0100	[thread overview]
Message-ID: <871ubtq47a.fsf@nemi.mork.no> (raw)
In-Reply-To: <CACVXFVOg9cVNYsRuAVkexwy4hvD_iJm_vARRksBAeiWppWnoXA@mail.gmail.com> (Ming Lei's message of "Tue, 5 Mar 2013 22:50:43 +0800")

Ming Lei <ming.lei@canonical•com> writes:
> On Tue, Mar 5, 2013 at 9:46 PM, Bjørn Mork <bjorn@mork•no> wrote:
>
>> Now, after inspecting wdm_suspend() which hides behind
>> info->subdriver->suspend(), I see that this is a completely theoretical
>> discussion as it always will return 0 if PMSG_IS_AUTO(msg) is true...
>>
>> Which means that your change really is a noop().  I still don't like it,
>> because it gives the impression that errors from info->subdriver->suspend()
>> isn't dealt with.
>
> Yes, it needn't dealt with in system sleep, so it has the document benefit.

The document that the return code is ignored by forcing it to 0 and
always return success.

But am still not convinced this is correct in any way.  AFAICS there is
no documentation stating that the drivers should care about what the USB
core use the return value for. Drivers are allowed to fail and the core
will ignore and clean up if necessary.

I still find any partial failures horrendous.  If we are not going to
fail on errors, then we'll return success and pretend to be suspended.

> No, USB core does not handle it, and will always ignore the return
> failure from driver's suspend, see usb_suspend_both() for non-autosuspend
> case.

Right you are.  Somehow I read the inverse.  Sorry about that.

In any case, it ends up here and everythin will be OK, which I assume is
why it can ignore the errors:

        /* If the suspend succeeded then prevent any more URB submissions
         * and flush any outstanding URBs.
         */
        } else {
                udev->can_submit = 0;
                for (i = 0; i < 16; ++i) {
                        usb_hcd_flush_endpoint(udev, udev->ep_out[i]);
                        usb_hcd_flush_endpoint(udev, udev->ep_in[i]);
                }
        }


Bjørn
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger•kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2013-03-05 15:03 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-05  4:01 [PATCH 0/7] USB: don't recover device if suspend fails in system sleep Ming Lei
2013-03-05  4:01 ` [PATCH 1/7] USB: adds comment on suspend callback Ming Lei
2013-03-05 13:16   ` Ming Lei
     [not found] ` <1362456103-24956-1-git-send-email-ming.lei-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org>
2013-03-05  4:01   ` [PATCH 2/7] USB: serial: handle suspend failure path correctly Ming Lei
2013-03-05  4:01 ` [PATCH 3/7] USBHID: don't recover device if suspend fails in system sleep Ming Lei
2013-03-05  4:01 ` [PATCH 4/7] usbnet: cdc_mbim: " Ming Lei
     [not found]   ` <1362456103-24956-5-git-send-email-ming.lei-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org>
2013-03-05  7:09     ` Bjørn Mork
2013-03-05 11:07       ` Ming Lei
2013-03-05 13:46         ` Bjørn Mork
2013-03-05 14:50           ` Ming Lei
2013-03-05 15:03             ` Bjørn Mork [this message]
2013-03-05 15:29               ` Ming Lei
2013-03-05 16:08                 ` Bjørn Mork
     [not found]                   ` <87wqtlommw.fsf-lbf33ChDnrE/G1V5fR+Y7Q@public.gmane.org>
2013-03-05 16:54                     ` Alan Stern
2013-03-05 17:35                       ` Bjørn Mork
2013-03-06  2:51                   ` Ming Lei
2013-03-06  3:03                     ` Ming Lei
     [not found]                       ` <CACVXFVN=i10cVS3RQ7jGrJAfsC+r2t61z7XOVKWMAMqKKELZCg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-03-06  7:06                         ` Bjørn Mork
2013-03-06  7:50                           ` Ming Lei
2013-03-06  8:32                             ` Bjørn Mork
2013-03-05  4:01 ` [PATCH 5/7] usbnet: smsc95xx: " Ming Lei
2013-03-05  4:01 ` [PATCH 6/7] usbnet: smsc75xx: " Ming Lei
2013-03-05  4:01 ` [PATCH 7/7] usbnet: qmi_wwan: " Ming Lei
     [not found]   ` <1362456103-24956-8-git-send-email-ming.lei-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org>
2013-03-05  7:09     ` Bjørn Mork
2013-03-05 12:27       ` Ming Lei
2013-03-05  5:14 ` [PATCH 0/7] USB: " Ming Lei
2013-03-05  7:03 ` Bjørn Mork
2013-03-05 10:55   ` Ming Lei
2013-03-05 12:50     ` Oliver Neukum
     [not found]       ` <3703451.5FViJ58GpZ-7ztolUikljGernLeA6q8OA@public.gmane.org>
2013-03-05 13:08         ` Ming Lei
2013-03-05 13:28           ` Oliver Neukum
2013-03-05 14:03             ` Ming Lei
2013-03-05 13:18     ` Bjørn Mork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=871ubtq47a.fsf@nemi.mork.no \
    --to=bjorn@mork$(echo .)no \
    --cc=davem@davemloft$(echo .)net \
    --cc=gregkh@linuxfoundation$(echo .)org \
    --cc=jkosina@suse$(echo .)cz \
    --cc=linux-input@vger$(echo .)kernel.org \
    --cc=linux-usb@vger$(echo .)kernel.org \
    --cc=ming.lei@canonical$(echo .)com \
    --cc=netdev@vger$(echo .)kernel.org \
    --cc=oneukum@suse$(echo .)de \
    --cc=stern@rowland$(echo .)harvard.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox