summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTimothy Pearson <tpearson@raptorengineeringinc.com>2015-09-05 19:31:03 -0500
committerPeter Stuge <peter@stuge.se>2015-10-24 05:57:33 +0200
commit478575c049690eca6870fd3ae417925fb5b2e952 (patch)
treeb35f6332d5a7c8eb876f1999909293b7347653d5 /src
parentd59dc4532bf8f9c49e307fdb62f8d2bb39b08824 (diff)
lib/stack: Add stack overrun detection
Change-Id: I9a59fcb7cf221ae590a047c520e7aff99e23ecf1 Signed-off-by: Timothy Pearson <tpearson@raptorengineeringinc.com> Reviewed-on: http://review.coreboot.org/11962 Tested-by: build bot (Jenkins) Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Diffstat (limited to 'src')
-rw-r--r--src/lib/stack.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lib/stack.c b/src/lib/stack.c
index 52dd723e38..bebeea2c61 100644
--- a/src/lib/stack.c
+++ b/src/lib/stack.c
@@ -18,6 +18,7 @@ it with the version available from LANL.
*/
/* Copyright 2000, Ron Minnich, Advanced Computing Lab, LANL
* rminnich@lanl.gov
+ * Copyright (C) 2015 Timothy Pearson <tpearson@raptorengineeringinc.com>, Raptor Engineering
*/
#include <assert.h>
@@ -33,9 +34,9 @@ int checkstack(void *top_of_stack, int core)
u32 *stack = (u32 *) (top_of_stack - stack_size);
if (stack[0] != 0xDEADBEEF){
- printk(BIOS_ERR, "Stack overrun on CPU%d. "
+ printk(BIOS_ERR, "Stack overrun on CPU%d (address %p overwritten). "
"Increase stack from current %zu bytes\n",
- core, stack_size);
+ core, stack, stack_size);
BUG();
return -1;
}