Commit 67e93ddd authored by Thomas Gleixner's avatar Thomas Gleixner Committed by Peter Zijlstra

x86/entry: Align SYM_CODE_START() variants

Explicitly align a bunch of commonly called SYM_CODE_START() symbols.
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/r/20220915111144.144068841@infradead.org
parent 1d293758
...@@ -284,7 +284,8 @@ SYM_FUNC_END(__switch_to_asm) ...@@ -284,7 +284,8 @@ SYM_FUNC_END(__switch_to_asm)
* r12: kernel thread arg * r12: kernel thread arg
*/ */
.pushsection .text, "ax" .pushsection .text, "ax"
SYM_CODE_START(ret_from_fork) __FUNC_ALIGN
SYM_CODE_START_NOALIGN(ret_from_fork)
UNWIND_HINT_EMPTY UNWIND_HINT_EMPTY
ANNOTATE_NOENDBR // copy_thread ANNOTATE_NOENDBR // copy_thread
movq %rax, %rdi movq %rax, %rdi
...@@ -600,13 +601,13 @@ SYM_CODE_END(\asmsym) ...@@ -600,13 +601,13 @@ SYM_CODE_END(\asmsym)
* shared between 32 and 64 bit and emit the __irqentry_text_* markers * shared between 32 and 64 bit and emit the __irqentry_text_* markers
* so the stacktrace boundary checks work. * so the stacktrace boundary checks work.
*/ */
.align 16 __ALIGN
.globl __irqentry_text_start .globl __irqentry_text_start
__irqentry_text_start: __irqentry_text_start:
#include <asm/idtentry.h> #include <asm/idtentry.h>
.align 16 __ALIGN
.globl __irqentry_text_end .globl __irqentry_text_end
__irqentry_text_end: __irqentry_text_end:
ANNOTATE_NOENDBR ANNOTATE_NOENDBR
...@@ -828,7 +829,8 @@ EXPORT_SYMBOL(asm_load_gs_index) ...@@ -828,7 +829,8 @@ EXPORT_SYMBOL(asm_load_gs_index)
* *
* C calling convention: exc_xen_hypervisor_callback(struct *pt_regs) * C calling convention: exc_xen_hypervisor_callback(struct *pt_regs)
*/ */
SYM_CODE_START_LOCAL(exc_xen_hypervisor_callback) __FUNC_ALIGN
SYM_CODE_START_LOCAL_NOALIGN(exc_xen_hypervisor_callback)
/* /*
* Since we don't modify %rdi, evtchn_do_upall(struct *pt_regs) will * Since we don't modify %rdi, evtchn_do_upall(struct *pt_regs) will
...@@ -856,7 +858,8 @@ SYM_CODE_END(exc_xen_hypervisor_callback) ...@@ -856,7 +858,8 @@ SYM_CODE_END(exc_xen_hypervisor_callback)
* We distinguish between categories by comparing each saved segment register * We distinguish between categories by comparing each saved segment register
* with its current contents: any discrepancy means we in category 1. * with its current contents: any discrepancy means we in category 1.
*/ */
SYM_CODE_START(xen_failsafe_callback) __FUNC_ALIGN
SYM_CODE_START_NOALIGN(xen_failsafe_callback)
UNWIND_HINT_EMPTY UNWIND_HINT_EMPTY
ENDBR ENDBR
movl %ds, %ecx movl %ds, %ecx
...@@ -1516,7 +1519,8 @@ SYM_CODE_END(ignore_sysret) ...@@ -1516,7 +1519,8 @@ SYM_CODE_END(ignore_sysret)
#endif #endif
.pushsection .text, "ax" .pushsection .text, "ax"
SYM_CODE_START(rewind_stack_and_make_dead) __FUNC_ALIGN
SYM_CODE_START_NOALIGN(rewind_stack_and_make_dead)
UNWIND_HINT_FUNC UNWIND_HINT_FUNC
/* Prevent any naive code from trying to unwind to our caller. */ /* Prevent any naive code from trying to unwind to our caller. */
xorl %ebp, %ebp xorl %ebp, %ebp
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
/* rdi: arg1 ... normal C conventions. rax is saved/restored. */ /* rdi: arg1 ... normal C conventions. rax is saved/restored. */
.macro THUNK name, func .macro THUNK name, func
SYM_FUNC_START_NOALIGN(\name) SYM_FUNC_START(\name)
pushq %rbp pushq %rbp
movq %rsp, %rbp movq %rsp, %rbp
...@@ -36,7 +36,7 @@ SYM_FUNC_END(\name) ...@@ -36,7 +36,7 @@ SYM_FUNC_END(\name)
EXPORT_SYMBOL(preempt_schedule_thunk) EXPORT_SYMBOL(preempt_schedule_thunk)
EXPORT_SYMBOL(preempt_schedule_notrace_thunk) EXPORT_SYMBOL(preempt_schedule_notrace_thunk)
SYM_CODE_START_LOCAL_NOALIGN(__thunk_restore) SYM_CODE_START_LOCAL(__thunk_restore)
popq %r11 popq %r11
popq %r10 popq %r10
popq %r9 popq %r9
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment