Commit 653a3538 authored by Zhang Rui's avatar Zhang Rui Committed by Rafael J. Wysocki

PM / sleep: fix freeze_ops NULL pointer dereferences

This patch fixes a NULL pointer dereference issue introduced by
commit 1f0b6386 (ACPI / PM: Hold ACPI scan lock over the "freeze"
sleep state).

Fixes: 1f0b6386 (ACPI / PM: Hold ACPI scan lock over the "freeze" sleep state)
Link: http://marc.info/?l=linux-pm&m=140541182017443&w=2Reported-and-tested-by: default avatarAlexander Stein <alexander.stein@systec-electronic.com>
Signed-off-by: default avatarZhang Rui <rui.zhang@intel.com>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 4320f6b1
...@@ -306,7 +306,7 @@ int suspend_devices_and_enter(suspend_state_t state) ...@@ -306,7 +306,7 @@ int suspend_devices_and_enter(suspend_state_t state)
error = suspend_ops->begin(state); error = suspend_ops->begin(state);
if (error) if (error)
goto Close; goto Close;
} else if (state == PM_SUSPEND_FREEZE && freeze_ops->begin) { } else if (state == PM_SUSPEND_FREEZE && freeze_ops && freeze_ops->begin) {
error = freeze_ops->begin(); error = freeze_ops->begin();
if (error) if (error)
goto Close; goto Close;
...@@ -335,7 +335,7 @@ int suspend_devices_and_enter(suspend_state_t state) ...@@ -335,7 +335,7 @@ int suspend_devices_and_enter(suspend_state_t state)
Close: Close:
if (need_suspend_ops(state) && suspend_ops->end) if (need_suspend_ops(state) && suspend_ops->end)
suspend_ops->end(); suspend_ops->end();
else if (state == PM_SUSPEND_FREEZE && freeze_ops->end) else if (state == PM_SUSPEND_FREEZE && freeze_ops && freeze_ops->end)
freeze_ops->end(); freeze_ops->end();
return error; return error;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment