mirror of
https://github.com/torvalds/linux.git
synced 2026-05-24 07:03:03 +02:00
s390/ftrace: move hotpatch trampolines to mcount.S
Move the ftrace hotpatch trampolines to mcount.S. This allows to make use of the standard SYM_CODE macros which again makes sure that the hotpatch trampolines follow the function alignment rules of the rest of the kernel. Signed-off-by: Heiko Carstens <hca@linux.ibm.com> Acked-by: Ilya Leoshkevich <iii@linux.ibm.com> Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
This commit is contained in:
parent
6ef55060a1
commit
dfa2a72cdb
|
|
@ -49,26 +49,6 @@ struct ftrace_insn {
|
|||
s32 disp;
|
||||
} __packed;
|
||||
|
||||
asm(
|
||||
" .align 16\n"
|
||||
"ftrace_shared_hotpatch_trampoline_br:\n"
|
||||
" lmg %r0,%r1,2(%r1)\n"
|
||||
" br %r1\n"
|
||||
"ftrace_shared_hotpatch_trampoline_br_end:\n"
|
||||
);
|
||||
|
||||
#ifdef CONFIG_EXPOLINE
|
||||
asm(
|
||||
" .align 16\n"
|
||||
"ftrace_shared_hotpatch_trampoline_exrl:\n"
|
||||
" lmg %r0,%r1,2(%r1)\n"
|
||||
" exrl %r0,0f\n"
|
||||
" j .\n"
|
||||
"0: br %r1\n"
|
||||
"ftrace_shared_hotpatch_trampoline_exrl_end:\n"
|
||||
);
|
||||
#endif /* CONFIG_EXPOLINE */
|
||||
|
||||
#ifdef CONFIG_MODULES
|
||||
static char *ftrace_plt;
|
||||
#endif /* CONFIG_MODULES */
|
||||
|
|
|
|||
|
|
@ -135,6 +135,22 @@ SYM_FUNC_END(return_to_handler)
|
|||
#endif
|
||||
#endif /* CONFIG_FUNCTION_TRACER */
|
||||
|
||||
SYM_CODE_START(ftrace_shared_hotpatch_trampoline_br)
|
||||
lmg %r0,%r1,2(%r1)
|
||||
br %r1
|
||||
SYM_INNER_LABEL(ftrace_shared_hotpatch_trampoline_br_end, SYM_L_GLOBAL)
|
||||
SYM_CODE_END(ftrace_shared_hotpatch_trampoline_br)
|
||||
|
||||
#ifdef CONFIG_EXPOLINE
|
||||
SYM_CODE_START(ftrace_shared_hotpatch_trampoline_exrl)
|
||||
lmg %r0,%r1,2(%r1)
|
||||
exrl %r0,0f
|
||||
j .
|
||||
0: br %r1
|
||||
SYM_INNER_LABEL(ftrace_shared_hotpatch_trampoline_exrl_end, SYM_L_GLOBAL)
|
||||
SYM_CODE_END(ftrace_shared_hotpatch_trampoline_exrl)
|
||||
#endif /* CONFIG_EXPOLINE */
|
||||
|
||||
#ifdef CONFIG_RETHOOK
|
||||
|
||||
SYM_FUNC_START(arch_rethook_trampoline)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user