diff options
author | Heiko Carstens <hca@linux.ibm.com> | 2024-04-29 14:28:47 +0200 |
---|---|---|
committer | Alexander Gordeev <agordeev@linux.ibm.com> | 2024-05-14 13:37:07 +0200 |
commit | be72ea09c1a5273abf8c6c52ef53e36c701cbf6a (patch) | |
tree | 91b96d1e0662af8fdff21cffeaf8d8ab11d6291e /arch/s390/include/asm/stacktrace.h | |
parent | cd58109283944ea8bdcd0a8211a86cbd2450716a (diff) | |
download | linux-be72ea09c1a5273abf8c6c52ef53e36c701cbf6a.tar.gz linux-be72ea09c1a5273abf8c6c52ef53e36c701cbf6a.tar.bz2 linux-be72ea09c1a5273abf8c6c52ef53e36c701cbf6a.zip |
s390/vdso: Introduce and use struct stack_frame_vdso_wrapper
Introduce and use struct stack_frame_vdso_wrapper within vdso user wrapper
code. With this structure it is possible to automatically generate an
asm-offset define which can be used to save and restore the return address
of the calling function.
Also use STACK_FRAME_USER_OVERHEAD instead of STACK_FRAME_OVERHEAD to
document that the code works with user space stack frames with the standard
stack frame layout.
Fixes: aa44433ac4ee ("s390: add USER_STACKTRACE support")
Reviewed-by: Jens Remus <jremus@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
Diffstat (limited to 'arch/s390/include/asm/stacktrace.h')
-rw-r--r-- | arch/s390/include/asm/stacktrace.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/s390/include/asm/stacktrace.h b/arch/s390/include/asm/stacktrace.h index 4aefbe32265d..85b6738b826a 100644 --- a/arch/s390/include/asm/stacktrace.h +++ b/arch/s390/include/asm/stacktrace.h @@ -13,6 +13,11 @@ struct stack_frame_user { unsigned long empty2[4]; }; +struct stack_frame_vdso_wrapper { + struct stack_frame_user sf; + unsigned long return_address; +}; + struct perf_callchain_entry_ctx; void arch_stack_walk_user_common(stack_trace_consume_fn consume_entry, void *cookie, |