[PATCH 18/27] x86/xen: Make xen_cpu_bringup_again() a real function
Josh Poimboeuf <[email protected]>
| Newsgroups | gmane.linux.kernel,gmane.linux.kernel.rust,gmane.linux.kbuild.devel |
|---|---|
| Message-ID | <c2d7db945dc838233b64e724a88b57d22cd3af8d.1787890035.git.jpoimboe@kernel.org> |
xen_cpu_bringup_again() is SYM_CODE because it switches stacks, but it's otherwise a callable function from C. Convert it to STT_FUNC so objtool can detect that it's noreturn and its entry can be removed from the hard-coded global noreturns list. Signed-off-by: Josh Poimboeuf <[email protected]> --- arch/x86/xen/xen-head.S | 5 +++-- tools/objtool/noreturns.h | 1 - 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/x86/xen/xen-head.S b/arch/x86/xen/xen-head.S index 5dad6c51cdc34..68d769772f309 100644 --- a/arch/x86/xen/xen-head.S +++ b/arch/x86/xen/xen-head.S @@ -55,12 +55,13 @@ SYM_CODE_START(asm_cpu_bringup_and_idle) call cpu_bringup_and_idle SYM_CODE_END(asm_cpu_bringup_and_idle) -SYM_CODE_START(xen_cpu_bringup_again) +SYM_FUNC_START(xen_cpu_bringup_again) UNWIND_HINT_FUNC mov %rdi, %rsp UNWIND_HINT_REGS call cpu_bringup_and_idle -SYM_CODE_END(xen_cpu_bringup_again) +SYM_FUNC_END(xen_cpu_bringup_again) +STACK_FRAME_NON_STANDARD_FP(xen_cpu_bringup_again) .popsection #endif #endif diff --git a/tools/objtool/noreturns.h b/tools/objtool/noreturns.h index ff93e94ee09a0..01c94f20d1818 100644 --- a/tools/objtool/noreturns.h +++ b/tools/objtool/noreturns.h @@ -21,5 +21,4 @@ NORETURN(panic) NORETURN(vpanic) NORETURN(rust_helper_BUG) NORETURN(sev_es_terminate) -NORETURN(xen_cpu_bringup_again) NORETURN(xen_start_kernel) -- 2.55.0