From 478575c049690eca6870fd3ae417925fb5b2e952 Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Sat, 5 Sep 2015 19:31:03 -0500 Subject: [PATCH] lib/stack: Add stack overrun detection Change-Id: I9a59fcb7cf221ae590a047c520e7aff99e23ecf1 Signed-off-by: Timothy Pearson Reviewed-on: http://review.coreboot.org/11962 Tested-by: build bot (Jenkins) Reviewed-by: Felix Held --- src/lib/stack.c | 5 +++-- 1 file 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 , Raptor Engineering */ #include @@ -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; }