summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPratik Prajapati <pratikkumar.v.prajapati@intel.com>2017-09-05 12:27:33 -0700
committerAaron Durbin <adurbin@chromium.org>2017-09-07 20:05:13 +0000
commit6dc148a42b9ae719521caff43556d60cf8ef7ca6 (patch)
treeb22384efec5f742e35903fb22b9ef0169d91813c
parent2be64048c1cc775c49d9179501e9c51dd307ba72 (diff)
soc/intel/common/sgx: Fix null pointer dereference warning from klocwork
Fix the warnings of klocwork scan. e.g. "Pointer 'dev' checked for NULL at line 158 will be dereferenced at line 159" Change-Id: I6cc9c68652b074c666c86456183460ca38a886ed Signed-off-by: Pratik Prajapati <pratikkumar.v.prajapati@intel.com> Reviewed-on: https://review.coreboot.org/21408 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
-rw-r--r--src/soc/intel/common/block/sgx/sgx.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/soc/intel/common/block/sgx/sgx.c b/src/soc/intel/common/block/sgx/sgx.c
index da84ea6119..ec1b6386df 100644
--- a/src/soc/intel/common/block/sgx/sgx.c
+++ b/src/soc/intel/common/block/sgx/sgx.c
@@ -41,8 +41,14 @@ void prmrr_core_configure(void)
msr_t prmrr_mask;
msr_t msr;
device_t dev = SA_DEV_ROOT;
+ assert(dev != NULL);
config_t *conf = dev->chip_info;
+ if (!conf) {
+ printk(BIOS_ERR, "SGX: failed to get chip_info\n");
+ return;
+ }
+
if (!conf->sgx_enable || !is_sgx_supported())
return;
@@ -159,6 +165,11 @@ void sgx_configure(void)
config_t *conf = dev->chip_info;
const void *microcode_patch = intel_mp_current_microcode();
+ if (!conf) {
+ printk(BIOS_ERR, "SGX: failed to get chip_info\n");
+ return;
+ }
+
if (!conf->sgx_enable || !is_sgx_supported() || !is_prmrr_set()) {
printk(BIOS_ERR, "SGX: pre-conditions not met\n");
return;