diff options
author | Guenter Roeck <[email protected]> | 2024-02-15 13:51:45 -0800 |
---|---|---|
committer | Helge Deller <[email protected]> | 2024-02-19 21:55:22 +0100 |
commit | 882a2a724ee964c1ebe7268a91d5c8c8ddc796bf (patch) | |
tree | d414e5f1e1ff0578e482dcd69dd9019eb3b8c2a3 /lib/test_fortify/write_overflow-strncpy-src.c | |
parent | f945a404ed8a6eeb9907ef122a8382df56c2a714 (diff) |
parisc: Fix stack unwinder
Debugging shows a large number of unaligned access traps in the unwinder
code. Code analysis reveals a number of issues with this code:
- handle_interruption is passed twice through
dereference_kernel_function_descriptor()
- ret_from_kernel_thread, syscall_exit, intr_return,
_switch_to_ret, and _call_on_stack are passed through
dereference_kernel_function_descriptor() even though they are
not declared as function pointers.
To fix the problems, drop one of the calls to
dereference_kernel_function_descriptor() for handle_interruption,
and compare the other pointers directly.
Fixes: 6414b30b39f9 ("parisc: unwind: Avoid missing prototype warning for handle_interruption()")
Fixes: 8e0ba125c2bf ("parisc/unwind: fix unwinder when CONFIG_64BIT is enabled")
Cc: Helge Deller <[email protected]>
Cc: Sven Schnelle <[email protected]>
Cc: John David Anglin <[email protected]>
Cc: Charlie Jenkins <[email protected]>
Cc: David Laight <[email protected]>
Signed-off-by: Guenter Roeck <[email protected]>
Signed-off-by: Helge Deller <[email protected]>
Diffstat (limited to 'lib/test_fortify/write_overflow-strncpy-src.c')
0 files changed, 0 insertions, 0 deletions