Re: [PATCH] USB: global suspend and remote wakeup don't mix

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 5 Aug 2013, Huang Rui wrote:

> Hi Alan,
> 
> On Thu, Jul 11, 2013 at 02:58:04PM -0400, Alan Stern wrote:
> > The hub driver was recently changed to use "global" suspend for system
> > suspend transitions on non-SuperSpeed buses.  This means that we don't
> > suspend devices individually by setting the suspend feature on the
> > upstream hub port; instead devices all go into suspend automatically
> > when the root hub stops transmitting packets.  The idea was to save
> > time and to avoid certain kinds of wakeup races.
> > 
> > Now it turns out that many hubs are buggy; they don't relay wakeup
> > requests from a downstream port to their upstream port if the
> > downstream port's suspend feature is not set (depending on the speed
> > of the downstream port, whether or not the hub is enabled for remote
> > wakeup, and possibly other factors).
> > 
> 
> Could you explain that how can you make sure the root cause is unable
> to relay wakup requests from downstream port to upstream port if
> downstream port's suspend feature is not set? The OS is unable wakeup
> from S3 at that time. We can't fetch dmesg log and serial port is
> suspend either at that time. Did you use any other tools to trace this
> issue? Could you teach me? Actually, I was encoutered this issue
> either.

It was simple.  I ran two tests.  They were exactly the same, except
that the suspend feature was set in the first test and was not set in
the second test.  Remote wakeup worked in the first test and not in the
second.

Alan Stern

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




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux