Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5b10c8e436b69f25b6dcb5586bbdc5e39c20ed1d Commit: 5b10c8e436b69f25b6dcb5586bbdc5e39c20ed1d Parent: b91d8a1205faa76affc4e1b7d5ccac1d17026970 Author: Russell King <[EMAIL PROTECTED]> AuthorDate: Sat May 26 12:04:17 2007 +0100 Committer: Russell King <[EMAIL PROTECTED]> CommitDate: Wed May 30 13:15:12 2007 +0100
[ARM] Fix stacktrace FP range checking Fix an oops in the stacktrace code, caused by improper range checking. We subtract 12 off 'fp' before testing to see if it's below the low bound. However, if 'fp' were zero before, it becomes a very large positive number, causing this test to succeed where it should fail. Signed-off-by: Russell King <[EMAIL PROTECTED]> --- arch/arm/kernel/stacktrace.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/arch/arm/kernel/stacktrace.c b/arch/arm/kernel/stacktrace.c index 8b63ad8..ae31deb 100644 --- a/arch/arm/kernel/stacktrace.c +++ b/arch/arm/kernel/stacktrace.c @@ -13,7 +13,7 @@ int walk_stackframe(unsigned long fp, unsigned long low, unsigned long high, /* * Check current frame pointer is within bounds */ - if ((fp - 12) < low || fp + 4 >= high) + if (fp < (low + 12) || fp + 4 >= high) break; frame = (struct stackframe *)(fp - 12); - To unsubscribe from this list: send the line "unsubscribe git-commits-head" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html