PM: hibernate: Honour ACPI hardware signature by default for virtual guests
authorDavid Woodhouse <dwmw@amazon.co.uk>
Fri, 11 Mar 2022 19:20:17 +0000 (19:20 +0000)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 16 Mar 2022 18:29:32 +0000 (19:29 +0100)
commitf6c46b1d62f8ffbf2cf6eb43ab0d277bd3f7e948
tree0cde7c4c4268fa79333c5def36eecc6cb3dbf3a3
parenta759de6991b35ad437adba32b5f0cb2fd9e75929
PM: hibernate: Honour ACPI hardware signature by default for virtual guests

The ACPI specification says that OSPM should refuse to restore from
hibernate if the hardware signature changes, and should boot from
scratch. However, real BIOSes often vary the hardware signature in cases
where we *do* want to resume from hibernate, so Linux doesn't follow the
spec by default.

However, in a virtual environment there's no reason for the VMM to vary
the hardware signature *unless* it wants to trigger a clean reboot as
defined by the ACPI spec. So enable the check by default if a hypervisor
is detected.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
arch/x86/kernel/acpi/sleep.c
drivers/acpi/sleep.c
include/linux/acpi.h