2009-11-19 12:00:19

by Ferenc Wagner

[permalink] [raw]
Subject: Re: [linux-pm] intermittent suspend problem again

Ferenc Wagner <[email protected]> writes:

> "Rafael J. Wysocki" <[email protected]> writes:
>
>> On Wednesday 18 November 2009, Ferenc Wagner wrote:
>>
>>> Ferenc Wagner <[email protected]> writes:
>>>
>>> Side question: If I run s2disk from the init=/bin/bash prompt, the
>>> instrumentation in acpi_enter_sleep_state_prep in drivers/acpi/acpica/hwsleep.c
>>> fires before the "Snapshotting system" phase, but it does not fire if I
>>> hibernate from the full running desktop. (That instrumentation was put
>>> there to investigate the KMS-triggered STR freeze.) What could explain
>>> this?
>>
>> It looks like it uses the "shutdown" method when run with init=/bin/bash, but
>> I don't know why exactly.
>
> Thanks for the tip, I'll check this too.

While looking into this, I found a reproducible kernel panic:

1. boot with init=/bin/bash
2. mount /usr; swapon -a
3. plug in a USB pendrive
4. s2disk (machine goes to sleep)
5. power on, proceed with resuming, press Enter to cancel resume pause
6. ACPI: Hardware changed while hibernated, cannot resume!
Kernel panic - not syncing: ACPI S4 hardware signature mismatch

Does it make sense?
--
Thanks,
Feri.


2009-11-19 13:02:17

by Ferenc Wagner

[permalink] [raw]
Subject: Re: intermittent suspend problem again

Ferenc Wagner <[email protected]> writes:

> Ferenc Wagner <[email protected]> writes:
>
>> "Rafael J. Wysocki" <[email protected]> writes:
>>
>>> On Wednesday 18 November 2009, Ferenc Wagner wrote:
>>>
>>>> Ferenc Wagner <[email protected]> writes:
>>>>
>>>> Side question: If I run s2disk from the init=/bin/bash prompt, the
>>>> instrumentation in acpi_enter_sleep_state_prep in drivers/acpi/acpica/hwsleep.c
>>>> fires before the "Snapshotting system" phase, but it does not fire if I
>>>> hibernate from the full running desktop. (That instrumentation was put
>>>> there to investigate the KMS-triggered STR freeze.) What could explain
>>>> this?
>>>
>>> It looks like it uses the "shutdown" method when run with init=/bin/bash, but
>>> I don't know why exactly.
>>
>> Thanks for the tip, I'll check this too.
>
> While looking into this, I found a reproducible kernel panic:
>
> 1. boot with init=/bin/bash
> 2. mount /usr; swapon -a
> 3. plug in a USB pendrive
> 4. s2disk (machine goes to sleep)
> 5. power on, proceed with resuming, press Enter to cancel resume pause
> 6. ACPI: Hardware changed while hibernated, cannot resume!
> Kernel panic - not syncing: ACPI S4 hardware signature mismatch
>
> Does it make sense?

Yes it does: it's the BIOS USB support playing its childish games.
I can disable it most of the time, except when booting from USB...

I wonder if this problem sould be handled more gracefully, now that USB
persistence is enabled by default. It works just fine for STR, but
potentially panics after hibernation.
--
Regards,
Feri.

2009-11-19 19:56:27

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: intermittent suspend problem again

On Thursday 19 November 2009, Ferenc Wagner wrote:
> Ferenc Wagner <[email protected]> writes:
>
> > Ferenc Wagner <[email protected]> writes:
> >
> >> "Rafael J. Wysocki" <[email protected]> writes:
> >>
> >>> On Wednesday 18 November 2009, Ferenc Wagner wrote:
> >>>
> >>>> Ferenc Wagner <[email protected]> writes:
> >>>>
> >>>> Side question: If I run s2disk from the init=/bin/bash prompt, the
> >>>> instrumentation in acpi_enter_sleep_state_prep in drivers/acpi/acpica/hwsleep.c
> >>>> fires before the "Snapshotting system" phase, but it does not fire if I
> >>>> hibernate from the full running desktop. (That instrumentation was put
> >>>> there to investigate the KMS-triggered STR freeze.) What could explain
> >>>> this?
> >>>
> >>> It looks like it uses the "shutdown" method when run with init=/bin/bash, but
> >>> I don't know why exactly.
> >>
> >> Thanks for the tip, I'll check this too.
> >
> > While looking into this, I found a reproducible kernel panic:
> >
> > 1. boot with init=/bin/bash
> > 2. mount /usr; swapon -a
> > 3. plug in a USB pendrive
> > 4. s2disk (machine goes to sleep)
> > 5. power on, proceed with resuming, press Enter to cancel resume pause
> > 6. ACPI: Hardware changed while hibernated, cannot resume!
> > Kernel panic - not syncing: ACPI S4 hardware signature mismatch
> >
> > Does it make sense?
>
> Yes it does: it's the BIOS USB support playing its childish games.
> I can disable it most of the time, except when booting from USB...
>
> I wonder if this problem sould be handled more gracefully, now that USB
> persistence is enabled by default. It works just fine for STR, but
> potentially panics after hibernation.

Add acpi_sleep=s4_nohwsig to the kernel command line.

Thanks,
Rafael