From 0ccfc0cc5327b2da6ac062eeda8fdf2afdf6a532 Mon Sep 17 00:00:00 2001 From: John Zhao Date: Tue, 16 Oct 2018 10:48:00 -0700 Subject: intel/common/block: Fix issue found by klockwork src/soc/intel/common/block/pmc/pmclib.c Function acpi_get_sleep_type: Pointer ps checked for NULL may be dereferenced. BRANCH=None TEST=Built & booted Yorp board. Change-Id: I15fe39fd9f930be56d03c2ffe62fb6f17249d4b5 Signed-off-by: John Zhao Reviewed-on: https://review.coreboot.org/29149 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin Reviewed-by: Furquan Shaikh --- src/soc/intel/common/block/pmc/pmclib.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/soc/intel/common') diff --git a/src/soc/intel/common/block/pmc/pmclib.c b/src/soc/intel/common/block/pmc/pmclib.c index cfe8011458..ef4384d395 100644 --- a/src/soc/intel/common/block/pmc/pmclib.c +++ b/src/soc/intel/common/block/pmc/pmclib.c @@ -95,9 +95,13 @@ __weak void pmc_soc_restore_power_failure(void) int acpi_get_sleep_type(void) { struct chipset_power_state *ps; + int prev_sleep_state = ACPI_S0; ps = pmc_get_power_state(); - return ps->prev_sleep_state; + if (ps) + prev_sleep_state = ps->prev_sleep_state; + + return prev_sleep_state; } static uint32_t pmc_reset_smi_status(void) -- cgit v1.2.3