[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200609141848.59486.rjw@sisk.pl>
Date: Thu, 14 Sep 2006 18:48:58 +0200
From: "Rafael J. Wysocki" <rjw@...k.pl>
To: Alan Stern <stern@...land.harvard.edu>
Cc: Andrew Morton <akpm@...l.org>, Mattia Dongili <malattia@...ux.it>,
Robert Hancock <hancockr@...w.ca>,
Kernel development list <linux-kernel@...r.kernel.org>,
USB development list <linux-usb-devel@...ts.sourceforge.net>
Subject: Re: [linux-usb-devel] 2.6.18-rc6-mm1 (-mm2): ohci resume problem
On Thursday, 14 September 2006 17:04, Alan Stern wrote:
> On Thu, 14 Sep 2006, Rafael J. Wysocki wrote:
>
> > > > Try adding some ehci_dbg() lines in there (copy the form of the line just
> > > > after restart:). We want to follow the value of
> > > > hcd->self.root_hub->state. Initially it should be equal to
> > > > USB_STATE_SUSPENDED (= 8), and it shouldn't change. But somewhere it is
> > > > getting set to USB_STATE_CONFIGURED (= 7). I don't know where, but almost
> > > > certainly somewhere in this routine. If you can find out where that
> > > > happens, I'd appreciate it.
> > >
> > > Done, but it shows hcd->self.root_hub->state is already 7 right after restart.
> >
> > BTW, all of the systems on which the problem shows up seem to be 64-bit.
> >
> > If you can't reproduce it on a 32-bit system, some type casting may be wrong
> > somewhere.
>
> I realized last night what the problem must be. It's extremely obvious in
> retrospect, but I happen to have a blind spot in this particular area.
>
> All you guys must have CONFIG_USB_SUSPEND turned off. Mattis certainly
> does; I checked his .config. Now I hardly ever do any testing without
> CONFIG_USB_SUSPEND, since there's not much point working on power
> management code if your kernel isn't set up to actually suspend devices.
> As a result I missed seeing the problems caused by the autosuspend
> changes.
Well, on my box the USB suspend also doesn't work with USB_SUSPEND set,
but the reason is different:
sb usb2: 'global' suspend -16
hub 2-0:1.0: suspend error -16
suspend_device(): usb_suspend+0x0/0x5b [usbcore]() returns -16
Could not suspend device usb2: error -16
The .config and full dmesg output (with the three debug patches applied) are
attached.
Greetings,
Rafael
--
You never change things by fighting the existing reality.
R. Buckminster Fuller
Download attachment "dmesg-usb-suspend.log.gz" of type "application/x-gzip" (15471 bytes)
Download attachment "kernel-config.gz" of type "application/x-gzip" (12931 bytes)
Powered by blists - more mailing lists