於 四,2013-07-11 於 14:14 +0200,oliver@xxxxxxxxxx 提到: > From: Oliver Neukum <oneukum@xxxxxxx> > > Some BIOSes change hardware based on the state of > a laptop's lid. If the lid is closed, the touchpad is > disabled and the checksum changes. > > Signed-off-by: Oliver Neukum <oneukum@xxxxxxx> > --- > drivers/acpi/sleep.c | 8 +++----- > 1 file changed, 3 insertions(+), 5 deletions(-) > > diff --git a/drivers/acpi/sleep.c b/drivers/acpi/sleep.c > index 9c1a435..14744e5 100644 > --- a/drivers/acpi/sleep.c > +++ b/drivers/acpi/sleep.c > @@ -664,11 +664,9 @@ static void acpi_hibernation_leave(void) > /* Reprogram control registers */ > acpi_leave_sleep_state_prep(ACPI_STATE_S4); > /* Check the hardware signature */ > - if (facs && s4_hardware_signature != facs->hardware_signature) { > - printk(KERN_EMERG "ACPI: Hardware changed while hibernated, " > - "cannot resume!\n"); > - panic("ACPI S4 hardware signature mismatch"); > - } > + if (facs && s4_hardware_signature != facs->hardware_signature) > + printk(KERN_CRIT "ACPI: Hardware changed while hibernated, " > + "success doubtful!\n"); This panic is also reflect to the memory size changed by user when machine in S4 state, BIOS should update hardware_signature to raise memory changed. Does it a good idea don't panic here if memory size changed? Should we need try to detect the change of memory or touchpad for know should we panic or not? > /* Restore the NVS memory area */ > suspend_nvs_restore(); > /* Allow EC transactions to happen. */ On the other hand, I saw another BIOS changed hardware_signature because the VGA detect output resolution changed when S4 resume. It's a problem for sometimes BIOS widely used hardware_signature on non-critical hardware change. Thanks a lot! Joey Lee -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html