• David Woodhouse's avatar
    PM: hibernate: Allow ACPI hardware signature to be honoured · 74d95555
    David Woodhouse authored
    Theoretically, when the hardware signature in FACS changes, the OS
    is supposed to gracefully decline to attempt to resume from S4:
    
     "If the signature has changed, OSPM will not restore the system
      context and can boot from scratch"
    
    In practice, Windows doesn't do this and many laptop vendors do allow
    the signature to change especially when docking/undocking, so it would
    be a bad idea to simply comply with the specification by default in the
    general case.
    
    However, there are use cases where we do want the compliant behaviour
    and we know it's safe. Specifically, when resuming virtual machines where
    we know the hypervisor has changed sufficiently that resume will fail.
    We really want to be able to *tell* the guest kernel not to try, so it
    boots cleanly and doesn't just crash. This patch provides a way to opt
    in to the spec-compliant behaviour on the command line.
    
    A follow-up patch may do this automatically for certain "known good"
    machines based on a DMI match, or perhaps just for all hypervisor
    guests since there's no good reason a hypervisor would change the
    hardware_signature that it exposes to guests *unless* it wants them
    to obey the ACPI specification.
    Signed-off-by: default avatarDavid Woodhouse <dwmw@amazon.co.uk>
    Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    74d95555
sleep.c 26.3 KB