Fix entering suspend-to-IDLE if no freeze_oops is set
Subsystems (2)
PATCH 1/1 Fix entering suspend-to-IDLE if no freeze_oops is set
If no freeze_ops is set, trying to enter suspend-to-IDLE will cause a nice oops in platform_suspend_prepare_late(). Add respective checks to platform_suspend_prepare_late() and platform_resume_early() functions.
Fixes a8d46b9e (ACPI / sleep: Rework the handling of ACPI GPE wakeup ...)
Signed-off-by Dmitry Eremin-Solenikov <[email protected]>
--- kernel/power/suspend.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
kernel/power/suspend.c +2 -2
@@ -146,7 +146,7 @@ static int platform_suspend_prepare(suspend_state_t state)static int platform_suspend_prepare_late (suspend_state_t state) { -return state ==PM_SUSPEND_FREEZE && freeze_ops->prepare ? +return state ==PM_SUSPEND_FREEZE && freeze_ops && freeze_ops->prepare ? freeze_ops->prepare () :0 ; }
@@ -164,7 +164,7 @@ static void platform_resume_noirq(suspend_state_t state)static void platform_resume_early (suspend_state_t state) { -if (state ==PM_SUSPEND_FREEZE && freeze_ops->restore) +if (state ==PM_SUSPEND_FREEZE && freeze_ops && freeze_ops->restore) freeze_ops->restore (); }
Signature · 1 line
2.1.1
Rafael J. Wysocki
AppliedQuoted 6 lines · Dmitry Eremin-Solenikov
If no
freeze_opsis set, trying to enter suspend-to-IDLE will cause a nice oops inplatform_suspend_prepare_late(). Add respective checks toplatform_suspend_prepare_late()andplatform_resume_early()functions.Fixes a8d46b9e (ACPI / sleep: Rework the handling of ACPI GPE wakeup ...)Signed-off-by Dmitry Eremin-Solenikov <[email protected]>
Applied, thanks!
Quoted 27 lines
--- kernel/power/suspend.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)kernel/power/suspend.c +2
-2@@ -146,7 +146,7 @@ static int platform_suspend_prepare(suspend_state_t state)static int platform_suspend_prepare_late (suspend_state_t state) { -return state ==PM_SUSPEND_FREEZE && freeze_ops->prepare ? +return state ==PM_SUSPEND_FREEZE && freeze_ops && freeze_ops->prepare ? freeze_ops->prepare () :0 ; }@@ -164,7 +164,7 @@ static void platform_resume_noirq(suspend_state_t state)static void platform_resume_early (suspend_state_t state) { -if (state ==PM_SUSPEND_FREEZE && freeze_ops->restore) +if (state ==PM_SUSPEND_FREEZE && freeze_ops && freeze_ops->restore) freeze_ops->restore (); }
Signature · 2 lines
I speak only for myself. Rafael J. Wysocki, Intel Open Source Technology Center.