Commit 9e2b8d7f authored by David Mosberger's avatar David Mosberger Committed by David Mosberger

ia64: Back-port from libunwind: fix off-by-one error in kernel-unwinder.

There are no known failures due to this bug, but it's clearly a bug and
given the right compiler, it could trigger and lead to bad stack traces etc.
parent c95f5b8d
...@@ -1416,7 +1416,7 @@ compile_reg (struct unw_state_record *sr, int i, struct unw_script *script) ...@@ -1416,7 +1416,7 @@ compile_reg (struct unw_state_record *sr, int i, struct unw_script *script)
case UNW_WHERE_FR: case UNW_WHERE_FR:
if (rval <= 5) if (rval <= 5)
val = unw.preg_index[UNW_REG_F2 + (rval - 1)]; val = unw.preg_index[UNW_REG_F2 + (rval - 2)];
else if (rval >= 16 && rval <= 31) else if (rval >= 16 && rval <= 31)
val = unw.preg_index[UNW_REG_F16 + (rval - 16)]; val = unw.preg_index[UNW_REG_F16 + (rval - 16)];
else { else {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment