#
a8a78d75 |
| 05-Mar-2024 |
Andrew Jones <andrew.jones@linux.dev> |
treewide: lib/stack: Fix backtrace
We should never pass the result of __builtin_frame_address(0) to another function since the compiler is within its rights to pop the frame to which it points befor
treewide: lib/stack: Fix backtrace
We should never pass the result of __builtin_frame_address(0) to another function since the compiler is within its rights to pop the frame to which it points before making the function call, as may be done for tail calls. Nobody has complained about backtrace(), so likely all compilations have been inlining backtrace_frame(), not dropping the frame on the tail call, or nobody is looking at traces. However, for riscv, when built for EFI, it does drop the frame on the tail call, and it was noticed. Preemptively fix backtrace() for all architectures.
Fixes: 52266791750d ("lib: backtrace printing") Acked-by: Claudio Imbrenda <imbrenda@linux.ibm.com> Reviewed-by: Nicholas Piggin <npiggin@gmail.com> Signed-off-by: Andrew Jones <andrew.jones@linux.dev>
show more ...
|
#
e526bc78 |
| 01-Jul-2023 |
Andrew Jones <andrew.jones@linux.dev> |
Merge branch 'arm/queue' into 'master'
arm/arm64: EFI support, arm64 backtrace support, PMU test improvements, and more
See merge request kvm-unit-tests/kvm-unit-tests!43
|
#
ecb5e711 |
| 28-Jun-2023 |
Nadav Amit <namit@vmware.com> |
arm64: stack: update trace stack on exception
Using gdb for backtracing or dumping the stack following an exception is not very helpful as the exact location of the exception is not saved.
Add an a
arm64: stack: update trace stack on exception
Using gdb for backtracing or dumping the stack following an exception is not very helpful as the exact location of the exception is not saved.
Add an additional frame to save the location of the exception.
One delicate point is dealing with the pretty_print_stacks script. When the stack is dumped, the script would not print the right address for the exception address: for every return address it deducts "1" before looking for the instruction location in the code (using addr2line). As a somewhat hacky solution add "1" for the exception address when dumping the stack.
Signed-off-by: Nadav Amit <namit@vmware.com> Signed-off-by: Andrew Jones <andrew.jones@linux.dev>
show more ...
|
#
d9de8051 |
| 28-Jun-2023 |
Nadav Amit <namit@vmware.com> |
arm64: enable frame pointer and support stack unwinding
Enable frame pointers for arm64 and perform stack unwinding based on arm64 convention.
Signed-off-by: Nadav Amit <namit@vmware.com> Signed-of
arm64: enable frame pointer and support stack unwinding
Enable frame pointers for arm64 and perform stack unwinding based on arm64 convention.
Signed-off-by: Nadav Amit <namit@vmware.com> Signed-off-by: Andrew Jones <andrew.jones@linux.dev>
show more ...
|