Commit 403b9636fe9f59124d1a437a297b330729061252

Authored by Dmitry Eremin-Solenikov
Committed by Rafael J. Wysocki
1 parent 0df1f2487d

PM / sleep: 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: a8d46b9e4e48 (ACPI / sleep: Rework the handling of ACPI GPE wakeup ...)
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

Showing 1 changed file with 2 additions and 2 deletions Side-by-side Diff

kernel/power/suspend.c
... ... @@ -146,7 +146,7 @@
146 146  
147 147 static int platform_suspend_prepare_late(suspend_state_t state)
148 148 {
149   - return state == PM_SUSPEND_FREEZE && freeze_ops->prepare ?
  149 + return state == PM_SUSPEND_FREEZE && freeze_ops && freeze_ops->prepare ?
150 150 freeze_ops->prepare() : 0;
151 151 }
152 152  
... ... @@ -164,7 +164,7 @@
164 164  
165 165 static void platform_resume_early(suspend_state_t state)
166 166 {
167   - if (state == PM_SUSPEND_FREEZE && freeze_ops->restore)
  167 + if (state == PM_SUSPEND_FREEZE && freeze_ops && freeze_ops->restore)
168 168 freeze_ops->restore();
169 169 }
170 170