Re: suspend/hibernation regression between 2.6.19 and 2.6.20 w/Thinkpad T41

From: Henrique de Moraes Holschuh
Date: Mon Aug 06 2007 - 11:03:47 EST


On Mon, 06 Aug 2007, Rafael J. Wysocki wrote:
> On Monday, 6 August 2007 16:36, Henrique de Moraes Holschuh wrote:
> > On Mon, 06 Aug 2007, Toralf Förster wrote:
> > > Am Montag, 6. August 2007 00:29 schrieb Pavel Machek:
> > > > Yes, I seen similar reports. Does it happen in all shutdown mode and
> > > > 2.6.22? Does it happen in platform mode in 2.6.19?
> > >
> > > I can reproduce this behaviour by doing the following with kernel 2.6.20 :
> > >
> > > 1. <Fn>+<F4> - the systems sleeps within RAM
> > > 2. <Fn> - the systems wakes up
> > > 3. <Fn>+<F12> - the systems hibernates to disk
> > > 4. <power> - systems wakes up
> > > 5. <Fn>+<F4> - the systems sleeps within RAM
> > >
> > > Now pressing <Fn> doesn't wake up the system, I have to press the power button
> > > for that instead.
> >
> > The resume path for suspend to disk is very different (for the firmware, at
> > least) than the resume path from sleep-to-RAM. One of them goes through a
> > system shutdown and cold boot (S5) or whatever-boot (S4 - who knows if it is
> > the same as a cold boot in a given thinkpad model? It doesn't have to be!).
> >
> > The firmware *knows* when you press Fn+F4/FN+F12, and recalls that. That's
> > why you can't get multiple hot key presses from pressing Fn+F4 or FN+F12
> > until you actually do an ACPI wake-up.
> >
> > While you are just doing S3, all that state is preserved without fuss. But
> > S5 does not preserve anything, and S4 is anyone's guess. Numerous thinkpad
> > BIOS fixes in the past were releated to such problems, so if you are not
> > using the latest BIOS for your model, your first duty is to upgrade it and
> > try again.
> >
> > IMHO, probably some ACPI state is being lost by the BIOS because of the
> > sleep-to-disk. I don't know how sleep-to-disk plays with the ACPI NV areas,
> > and ACPI data areas from the BIOS, so I can't help much there.
>
> We have the problem that ACPI is already initialized by the boot kernel before
> the hibernation image is loaded, so there's a chance that the saved state
> information will be lost.

Yeah. Big bad design issue right there. And not one that is even remotely
easy to "fix", AFAIK.

--
"One disk to rule them all, One disk to find them. One disk to bring
them all and in the darkness grind them. In the Land of Redmond
where the shadows lie." -- The Silicon Valley Tarot
Henrique Holschuh
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/