[coreboot-gerrit] Change in coreboot[master]: lib/stage_cache: Add debug messages for failures

Marshall Dawson (Code Review) gerrit at coreboot.org
Wed Jan 31 19:59:12 CET 2018


Marshall Dawson has uploaded this change for review. ( https://review.coreboot.org/23517


Change subject: lib/stage_cache: Add debug messages for failures
......................................................................

lib/stage_cache: Add debug messages for failures

Communicate additional status to the console when the save and load
functions do not function as expected.  The most likely scenario for
an error is when using a cache that is external to cbmem, and restricted
in size.

Change-Id: Ic9a709c11152b3b9cb40abfc204151f9636b5a4c
Signed-off-by: Marshall Dawson <marshalldawson3rd at gmail.com>
---
M src/lib/cbmem_stage_cache.c
M src/lib/ext_stage_cache.c
2 files changed, 32 insertions(+), 8 deletions(-)



  git pull ssh://review.coreboot.org:29418/coreboot refs/changes/17/23517/1

diff --git a/src/lib/cbmem_stage_cache.c b/src/lib/cbmem_stage_cache.c
index 2947972..cc4832f 100644
--- a/src/lib/cbmem_stage_cache.c
+++ b/src/lib/cbmem_stage_cache.c
@@ -25,15 +25,21 @@
 	void *c;
 
 	meta = cbmem_add(CBMEM_ID_STAGEx_META + stage_id, sizeof(*meta));
-	if (meta == NULL)
+	if (meta == NULL) {
+		printk(BIOS_ERR, "Error: Can't add %x metadata to cbmem\n",
+				CBMEM_ID_STAGEx_META + stage_id);
 		return;
+	}
 	meta->load_addr = (uintptr_t)prog_start(stage);
 	meta->entry_addr = (uintptr_t)prog_entry(stage);
 	meta->arg = (uintptr_t)prog_entry_arg(stage);
 
 	c = cbmem_add(CBMEM_ID_STAGEx_CACHE + stage_id, prog_size(stage));
-	if (c == NULL)
+	if (c == NULL) {
+		printk(BIOS_ERR, "Error: Can't add stage_cache %x to cbmem\n",
+				CBMEM_ID_STAGEx_CACHE + stage_id);
 		return;
+	}
 
 	memcpy(c, prog_start(stage), prog_size(stage));
 }
@@ -49,13 +55,19 @@
 	prog_set_entry(stage, NULL, NULL);
 
 	meta = cbmem_find(CBMEM_ID_STAGEx_META + stage_id);
-	if (meta == NULL)
+	if (meta == NULL) {
+		printk(BIOS_ERR, "Error: Can't find %x metadata in cbmem\n",
+				CBMEM_ID_STAGEx_META + stage_id);
 		return;
+	}
 
 	e = cbmem_entry_find(CBMEM_ID_STAGEx_CACHE + stage_id);
 
-	if (e == NULL)
+	if (e == NULL) {
+		printk(BIOS_ERR, "Error: Can't find stage_cache %x in cbmem\n",
+				CBMEM_ID_STAGEx_CACHE + stage_id);
 		return;
+	}
 
 	c = cbmem_entry_start(e);
 	size = cbmem_entry_size(e);
diff --git a/src/lib/ext_stage_cache.c b/src/lib/ext_stage_cache.c
index 2a99188..cea9f52 100644
--- a/src/lib/ext_stage_cache.c
+++ b/src/lib/ext_stage_cache.c
@@ -68,8 +68,11 @@
 	imd = imd_get();
 	e = imd_entry_add(imd, CBMEM_ID_STAGEx_META + stage_id, sizeof(*meta));
 
-	if (e == NULL)
+	if (e == NULL) {
+		printk(BIOS_DEBUG, "Error: Can't add %x metadata to imd\n",
+				CBMEM_ID_STAGEx_META + stage_id);
 		return;
+	}
 
 	meta = imd_entry_at(imd, e);
 
@@ -79,8 +82,11 @@
 	e = imd_entry_add(imd, CBMEM_ID_STAGEx_CACHE + stage_id,
 				prog_size(stage));
 
-	if (e == NULL)
+	if (e == NULL) {
+		printk(BIOS_DEBUG, "Error: Can't add stage_cache %x to imd\n",
+				CBMEM_ID_STAGEx_CACHE + stage_id);
 		return;
+	}
 
 	c = imd_entry_at(imd, e);
 
@@ -97,15 +103,21 @@
 
 	imd = imd_get();
 	e = imd_entry_find(imd, CBMEM_ID_STAGEx_META + stage_id);
-	if (e == NULL)
+	if (e == NULL) {
+		printk(BIOS_DEBUG, "Error: Can't find %x metadata in imd\n",
+				CBMEM_ID_STAGEx_META + stage_id);
 		return;
+	}
 
 	meta = imd_entry_at(imd, e);
 
 	e = imd_entry_find(imd, CBMEM_ID_STAGEx_CACHE + stage_id);
 
-	if (e == NULL)
+	if (e == NULL) {
+		printk(BIOS_DEBUG, "Error: Can't find stage_cache %x in imd\n",
+				CBMEM_ID_STAGEx_CACHE + stage_id);
 		return;
+	}
 
 	c = imd_entry_at(imd, e);
 	size = imd_entry_size(imd, e);

-- 
To view, visit https://review.coreboot.org/23517
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings

Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ic9a709c11152b3b9cb40abfc204151f9636b5a4c
Gerrit-Change-Number: 23517
Gerrit-PatchSet: 1
Gerrit-Owner: Marshall Dawson <marshalldawson3rd at gmail.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.coreboot.org/pipermail/coreboot-gerrit/attachments/20180131/545990de/attachment-0001.html>


More information about the coreboot-gerrit mailing list