From: David Brownell <david-b@pacbell.net>
To: Pavel Machek <pavel@suse.cz>
Cc: weissg@vienna.at, kernel list <linux-kernel@vger.kernel.org>,
linux-usb-devel@lists.sourceforge.net
Subject: Re: [linux-usb-devel] OHCI problems with suspend/resume
Date: Thu, 24 Jul 2003 10:10:16 -0700 [thread overview]
Message-ID: <3F2012F8.8030103@pacbell.net> (raw)
In-Reply-To: <20030724102432.GB228@elf.ucw.cz>
Pavel Machek wrote:
> Hi!
Good morning to you too!
>>>In 2.6.0-test1, OHCI is non-functional after first suspend/resume, and
>>>kills machine during secon suspend/resume cycle.
>>
>>Hmm, last time I tested suspend/resume it worked fine.
>>That was 2.5.67, but the OHCI code hasn't had any
>>relevant changes since then.
>
>
>>Evidently your system used different suspend/resume paths
>>than mine did ... :)
>
>
> Can you try echo 4 > /proc/acpi/sleep? echo 3 breaks it, too, but that
> is little harder to set up.
I usually test with "apm -s" ... since I've yet to come up with
an ACPI configuration that works properly. IRQ misconfiguration
for USB is still a blocking issue for many people (not just me).
Going through ACPI would certainly explain some breakage; it's
been sufficiently troublesome with USB that it's not gotten much
testing at all. I happened to notice this morning that ACPI's
USB IRQ problems are one of the longest-standing open 2.6 bugs:
http://bugme.osdl.org/show_bug.cgi?id=10 ... and it's now been
migrated into the 2.4.22-pre series (sigh).
Could you try reproducing this failure using just APM? I could
believe there's a generic PM issue (I've been expecting 2.6-test
to eventually start shaking PM out); but given the amount of
trouble ACPI has caused, we should first rule that factor out.
>>>What happens is that ohci_irq gets ohci->hcca == NULL, and kills
>>>machine. Why is ohci->hcca == NULL? ohci_stop was called from
>>>hcd_panic() and freed ohci->hcca.
>>
>>Then the problem is that an IRQ is still coming in after the
>>HCD panicked.
>
>
> Actually, as PCI interrupts are shared, I do not find that too
> surprising.
I do. Sharing is irrelevant. If it's been cleaned up, then
the IRQ should no longer be bound to that device.
>>>I believe that we should
>>>
>>>1) not free ohci->hcca so that system has better chance surviving
>>>hcd_panic()
>>
>>Not ever????
>>
>>It's freed in exactly one place, after everything should be
>>shut down. If it wasn't shut down, that was the problem.
>>
>>Could you instead figure out why it wasn't shut down?
>
>
> In case of hcd_panic(), where is interrupt deallocated?
I'll have to check that out, but I noticed that one of my
usual development machines (on which suspend/resume can
actually be made to work) is now unusable due to some PCI
initialization issue with Cardbus.
>>>and
>>>
>>>2) inform user when hcd panics.
>>
>>The OHCI code does that already on the normal panic path
>>(controller delivers a Unrecoverable Error interrupt), but
>>you're right that this would be better as a generic KERN_CRIT
>>diagnostic. (But one saying which HCD panicked, rather than
>>leaving folk to guess which of the N it applied to...) And
>>I'd print that message sooner, not waiting for that task to
>>be scheduled.
>
>
> That would be good. I definitely had another failure path, where it
> did not tell me that hcd is no K.O...
I'll likely submit that to Greg in the next few days, cc you.
- Dave
> Pavel
next prev parent reply other threads:[~2003-07-24 16:54 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-07-23 22:08 OHCI problems with suspend/resume Pavel Machek
2003-07-24 1:19 ` [linux-usb-devel] " David Brownell
2003-07-24 10:24 ` Pavel Machek
2003-07-24 17:10 ` David Brownell [this message]
2003-07-24 22:10 ` Pavel Machek
2003-07-24 12:37 ` Dominik Brugger
2003-07-24 12:56 ` Dominik Brugger
2003-07-24 22:04 ` Pavel Machek
2003-07-24 22:46 ` Pavel Machek
2003-07-25 7:52 ` Dominik Brugger
2003-07-25 15:06 ` [linux-usb-devel] " Alan Stern
2003-07-25 17:20 ` Benjamin Herrenschmidt
2003-07-25 22:48 ` David Brownell
2003-07-26 16:02 ` Alan Stern
2003-07-26 21:01 ` Pavel Machek
2003-07-26 21:16 ` David Brownell
2003-07-27 14:57 ` Alan Stern
2003-07-31 3:27 ` David Brownell
2003-07-31 3:51 ` David Brownell
2003-07-31 9:42 ` Pavel Machek
2003-07-31 13:37 ` David Brownell
2003-07-31 14:09 ` Pavel Machek
2003-07-31 17:32 ` David Brownell
2003-07-31 17:31 ` Pavel Machek
2003-07-31 21:32 ` Benjamin Herrenschmidt
2003-07-31 21:30 ` Benjamin Herrenschmidt
2003-07-31 21:29 ` Benjamin Herrenschmidt
2003-07-31 9:47 ` Pavel Machek
2003-07-31 13:30 ` David Brownell
2003-07-31 16:06 ` Pavel Machek
2003-07-31 9:49 ` Pavel Machek
2003-07-31 13:23 ` David Brownell
2003-07-31 16:07 ` Pavel Machek
2003-07-31 21:25 ` Benjamin Herrenschmidt
2003-07-31 21:25 ` Benjamin Herrenschmidt
2003-07-31 22:08 ` Pavel Machek
2003-07-31 21:23 ` Benjamin Herrenschmidt
2003-07-31 21:55 ` David Brownell
2003-07-31 22:05 ` Benjamin Herrenschmidt
2003-07-31 22:09 ` Pavel Machek
2003-07-31 23:12 ` Oliver Neukum
2003-08-01 9:33 ` Pavel Machek
2003-07-31 22:03 ` Pavel Machek
2003-08-01 0:27 ` Benjamin Herrenschmidt
2003-08-04 19:25 ` Pavel Machek
2003-08-01 18:20 ` Dominik Brugger
2003-07-29 13:16 ` [linux-usb-devel] " David Brownell
2003-07-31 14:18 ` Pavel Machek
2003-08-01 17:41 ` David Brownell
2003-08-07 22:35 ` Pavel Machek
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=3F2012F8.8030103@pacbell.net \
--to=david-b@pacbell.net \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb-devel@lists.sourceforge.net \
--cc=pavel@suse.cz \
--cc=weissg@vienna.at \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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