From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Tobias Diedrich <ranma+kernel@tdiedrich.de>
Cc: Dmitry Torokhov <dtor@insightbb.com>,
pavel@suse.cz, Adrian Bunk <bunk@stusta.de>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
linux-pm@lists.osdl.org, Maxim Levitsky <maximlevitsky@gmail.com>
Subject: Re: Linux 2.6.21-rc6
Date: Sun, 15 Apr 2007 21:37:53 +0200 [thread overview]
Message-ID: <200704152137.54574.rjw@sisk.pl> (raw)
In-Reply-To: <20070415184959.GA26517@melchior.yamamaya.is-a-geek.org>
On Sunday, 15 April 2007 20:50, Tobias Diedrich wrote:
> Rafael J. Wysocki wrote:
> > On Sunday, 15 April 2007 16:19, Dmitry Torokhov wrote:
> > > On Sunday 15 April 2007 07:16, Rafael J. Wysocki wrote:
> > > > On Sunday, 15 April 2007 10:02, Tobias Diedrich wrote:
> > > >
> > > > > > With CONFIG_PM_DEBUG=y and CONFIG_DISABLE_CONSOLE_SUSPEND=y I see
> > > > > > that the second suspend hangs at "i8042 i8042: EARLY resume".
> > > > > > This is kinda interesting because I'm normally using a USB keyboard
> > > > > > and sure enough, if I hook up a normal keyboard and disable USB
> > > > > > legacy support in the BIOS, then suspend to disk works multiple
> > > > > > times. I'd still rather like to use my USB keyboard though. ;)
> > > >
> > > > Well, I think that when you're using the USB keyboard and the USB legacy
> > > > support, the i8042 driver thinks it has a keyboard to handle and tries to
> > > > handle it during the suspend, which fails. I don't know why it fails during
> > > > the second suspend, though.
> > > >
> > > > Dmitry, could you please have a look?
> > > >
> > >
> > > This is wierd as i8042 does not use suspend_late/resume_early hooks and
> > > so it is impossible for it to hang there. None of input drivers use these
> > > hooks. Could it be that some other driver _after_ i8042 hangs?
> >
> > Yes.
> >
> > Tobias, can you please post the dmesg output from after a successful
> > suspend/resume cycle with CONFIG_PM_DEBUG=y in the 'platform' mode?
>
> Here you go:
Thanks.
[--snip--]
> [10233.239209] swsusp: critical section:
> [10233.253579] swsusp: Need to copy 125818 pages
> [10233.253688] swsusp: Normal pages needed: 125818 + 1024 + 22, available pages: 135940
> [ 43.795445] Extended CMOS year: 2000
> [ 43.798813] svm_cpu_init: svm_data is NULL on 0
> [ 43.800886] pci 0000:00:00.0: EARLY resume
> [ 43.800994] pci 0000:00:01.0: EARLY resume
> [ 43.801102] nForce2_smbus 0000:00:01.1: EARLY resume
> [ 43.801210] pci 0000:00:01.2: EARLY resume
> [ 43.801317] ohci_hcd 0000:00:02.0: EARLY resume
> [ 43.801425] ehci_hcd 0000:00:02.1: EARLY resume
> [ 43.801532] pata_amd 0000:00:04.0: EARLY resume
> [ 43.801640] pci 0000:00:06.0: EARLY resume
> [ 43.801747] pci 0000:00:06.1: EARLY resume
> [ 43.801854] forcedeth 0000:00:08.0: EARLY resume
> [ 43.801962] forcedeth 0000:00:09.0: EARLY resume
> [ 43.802070] pcieport-driver 0000:00:0a.0: EARLY resume
> [ 43.802177] pcieport-driver 0000:00:0b.0: EARLY resume
> [ 43.802289] pcieport-driver 0000:00:0c.0: EARLY resume
> [ 43.802398] pcieport-driver 0000:00:0d.0: EARLY resume
> [ 43.802506] pcieport-driver 0000:00:0e.0: EARLY resume
> [ 43.802613] pcieport-driver 0000:00:0f.0: EARLY resume
> [ 43.802721] pci 0000:00:18.0: EARLY resume
> [ 43.802828] pci 0000:00:18.1: EARLY resume
> [ 43.802935] pci 0000:00:18.2: EARLY resume
> [ 43.803043] k8temp 0000:00:18.3: EARLY resume
> [ 43.803150] e100 0000:01:07.0: EARLY resume
> [ 43.803257] EMU10K1_Audigy 0000:01:08.0: EARLY resume
> [ 43.803365] Emu10k1_gameport 0000:01:08.1: EARLY resume
> [ 43.803473] pci 0000:01:0b.0: EARLY resume
> [ 43.803580] ahci 0000:06:00.0: EARLY resume
> [ 43.803695] pci 0000:06:00.1: EARLY resume
> [ 43.803802] pci 0000:07:00.0: EARLY resume
> [ 43.803910] pci 0000:07:00.1: EARLY resume
> [ 43.804018] platform bluetooth: EARLY resume
> [ 43.804126] platform pcspkr: EARLY resume
> [ 43.804233] platform vesafb.0: EARLY resume
> [ 43.804348] i8042 i8042: EARLY resume
> [ 43.804460] PM: Image restored successfully.
> [ 43.924837] acpi acpi_system:00: resuming
> [ 43.924946] button button_power:00: resuming
> [ 43.925054] processor ACPI0007:00: resuming
> [ 43.925161] processor ACPI0007:01: resuming
> [ 43.925268] acpi device:00: resuming
[--snip--]
Hmm, it looks like i8042 is the last thing on the dpm_off_irq list. Still,
if the ACPI resume fails, the next messages may not make it to the console
(it's not very probable, though).
I've tried to reproduce your problem on another box on which I have no PS/2
keyboard (USB keyboard/mouse only) and the USB legacy support set, but I can't.
There must be something very special in your configuration.
Have you tried the patch that I posted some time ago (appended again for
convenience)?
Rafael
drivers/input/serio/i8042.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Index: linux-2.6.21-rc6/drivers/input/serio/i8042.c
===================================================================
--- linux-2.6.21-rc6.orig/drivers/input/serio/i8042.c 2007-04-07 12:15:19.000000000 +0200
+++ linux-2.6.21-rc6/drivers/input/serio/i8042.c 2007-04-15 18:30:01.000000000 +0200
@@ -846,7 +846,8 @@ static long i8042_panic_blink(long count
static int i8042_suspend(struct platform_device *dev, pm_message_t state)
{
if (dev->dev.power.power_state.event != state.event) {
- if (state.event == PM_EVENT_SUSPEND)
+ if (state.event == PM_EVENT_SUSPEND
+ || state.event == PM_EVENT_PRETHAW)
i8042_controller_reset();
dev->dev.power.power_state = state;
next prev parent reply other threads:[~2007-04-15 19:34 UTC|newest]
Thread overview: 90+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-04-06 2:50 Linux 2.6.21-rc6 Linus Torvalds
2007-04-06 21:40 ` tg3: unable to handle null pointer dereference [Re: Linux 2.6.21-rc6] Nishanth Aravamudan
2007-04-06 22:57 ` Michael Chan
2007-04-07 0:36 ` tg3: unable to handle null pointer dereference David Miller
2007-04-07 1:53 ` Nishanth Aravamudan
2007-04-06 22:44 ` Linux 2.6.21-rc6 - regressions update Soeren Sonnenburg
2007-04-06 23:04 ` Linus Torvalds
2007-04-07 8:12 ` [patch] high-res timers: UP resume fix Ingo Molnar
2007-04-07 8:25 ` Ingo Molnar
2007-04-07 8:48 ` Thomas Gleixner
2007-04-07 8:50 ` Ingo Molnar
2007-04-07 9:48 ` Rafael J. Wysocki
2007-04-07 9:47 ` Ingo Molnar
2007-04-07 9:51 ` Thomas Gleixner
2007-04-07 9:53 ` Rafael J. Wysocki
2007-04-11 14:00 ` Pavel Machek
2007-04-07 8:51 ` Thomas Gleixner
2007-04-07 9:49 ` [patch] high-res timers: " Ingo Molnar
2007-04-07 10:02 ` Rafael J. Wysocki
2007-04-07 10:05 ` [patch, take #3] " Ingo Molnar
2007-04-07 10:45 ` Soeren Sonnenburg
2007-04-08 15:57 ` Linux 2.6.21-rc6 - regressions update Soeren Sonnenburg
2007-04-07 8:48 ` Linux 2.6.21-rc6 Michal Piotrowski
2007-04-07 18:37 ` Randy Dunlap
2007-04-07 18:46 ` Linus Torvalds
2007-04-07 18:50 ` Randy Dunlap
2007-04-07 18:51 ` Linus Torvalds
2007-04-07 20:58 ` Gene Heskett
2007-04-08 23:09 ` Andrew Morton
2007-04-09 0:42 ` Greg KH
2007-04-09 0:59 ` Jeff Garzik
2007-04-10 7:57 ` Chris Wedgwood
2007-04-11 7:38 ` Ingo Molnar
2007-04-10 3:32 ` Dmitry Torokhov
2007-04-10 14:35 ` Jeff Chua
2007-04-10 15:35 ` Linus Torvalds
2007-04-12 4:16 ` Jeff Chua
2007-04-12 9:55 ` [new 2.6.21-rc6 crash] BUG: unable to handle kernel paging request at virtual address 6b6b6ceb Ingo Molnar
2007-04-12 15:14 ` Linux 2.6.21-rc6 Mattia Dongili
2007-04-12 17:02 ` Mattia Dongili
2007-04-12 18:26 ` Maxim Levitsky
2007-04-13 8:52 ` Mattia Dongili
2007-04-13 21:29 ` Tobias Diedrich
2007-04-13 23:50 ` Adrian Bunk
2007-04-14 6:50 ` Tobias Diedrich
2007-04-14 8:16 ` Tobias Diedrich
2007-04-14 9:05 ` Rafael J. Wysocki
2007-04-14 10:32 ` Tobias Diedrich
2007-04-14 12:26 ` Adrian Bunk
2007-04-14 12:09 ` Tobias Diedrich
2007-04-14 12:24 ` Tobias Diedrich
2007-04-14 12:31 ` Tobias Diedrich
2007-04-14 13:00 ` Adrian Bunk
2007-04-14 18:28 ` Rafael J. Wysocki
2007-04-14 19:56 ` Tobias Diedrich
2007-04-14 20:23 ` Rafael J. Wysocki
2007-04-14 20:25 ` Adrian Bunk
2007-04-14 20:38 ` Rafael J. Wysocki
2007-04-14 21:35 ` Tobias Diedrich
2007-04-14 21:58 ` Rafael J. Wysocki
2007-04-15 7:38 ` Tobias Diedrich
2007-04-15 8:02 ` Tobias Diedrich
2007-04-15 11:16 ` Rafael J. Wysocki
2007-04-15 14:19 ` Dmitry Torokhov
2007-04-15 15:52 ` Rafael J. Wysocki
2007-04-15 18:50 ` Tobias Diedrich
2007-04-15 19:37 ` Rafael J. Wysocki [this message]
2007-04-15 15:14 ` [linux-pm] " David Brownell
2007-04-15 16:37 ` Rafael J. Wysocki
2007-04-15 17:53 ` David Brownell
2007-04-15 19:40 ` Tobias Diedrich
2007-04-15 19:54 ` Rafael J. Wysocki
2007-04-25 17:14 ` Tobias Diedrich
2007-04-25 19:36 ` Rafael J. Wysocki
2007-04-25 20:09 ` Tobias Diedrich
2007-04-14 0:36 ` [1/3] 2.6.21-rc6: known regressions Adrian Bunk
2007-04-14 0:38 ` [2/3] " Adrian Bunk
2007-04-14 0:38 ` [3/3] " Adrian Bunk
2007-04-14 1:57 ` Antonino A. Daplas
2007-04-15 16:26 ` Marcus Better
2007-04-15 23:08 ` Antonino A. Daplas
2007-04-16 6:23 ` Marcus Better
2007-04-16 6:45 ` Antonino A. Daplas
2007-04-17 8:17 ` Marcus Better
2007-04-17 9:27 ` Antonino A. Daplas
2007-04-17 11:54 ` Marcus Better
2007-04-24 15:33 ` Pavel Machek
2007-04-14 7:24 ` Tobias Doerffel
2007-04-14 7:40 ` Dave Jones
2007-04-15 17:15 ` Jeff Chua
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=200704152137.54574.rjw@sisk.pl \
--to=rjw@sisk.pl \
--cc=bunk@stusta.de \
--cc=dtor@insightbb.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@lists.osdl.org \
--cc=maximlevitsky@gmail.com \
--cc=pavel@suse.cz \
--cc=ranma+kernel@tdiedrich.de \
/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