mirror of https://gitee.com/openkylin/linux.git
x86/entry/64: Make gs_change a local label
... so that it doesn't appear in objdump output. Signed-off-by: Borislav Petkov <bp@suse.de> Signed-off-by: Andy Lutomirski <luto@kernel.org> Cc: Andy Lutomirski <luto@amacapital.net> Cc: Borislav Petkov <bp@alien8.de> Cc: Brian Gerst <brgerst@gmail.com> Cc: Denys Vlasenko <dvlasenk@redhat.com> Cc: H. Peter Anvin <hpa@zytor.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Rudolf Marek <r.marek@assembler.cz> Cc: Thomas Gleixner <tglx@linutronix.de> Link: http://lkml.kernel.org/r/b9c532a0e5f8d56dede2bd59767d40024d5a75e2.1460075211.git.luto@kernel.org Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
parent
96e5d28ae7
commit
42c748bb25
|
@ -781,7 +781,7 @@ ENTRY(native_load_gs_index)
|
|||
pushfq
|
||||
DISABLE_INTERRUPTS(CLBR_ANY & ~CLBR_RDI)
|
||||
SWAPGS
|
||||
gs_change:
|
||||
.Lgs_change:
|
||||
movl %edi, %gs
|
||||
2: ALTERNATIVE "", "mfence", X86_BUG_SWAPGS_FENCE
|
||||
SWAPGS
|
||||
|
@ -789,7 +789,7 @@ gs_change:
|
|||
ret
|
||||
END(native_load_gs_index)
|
||||
|
||||
_ASM_EXTABLE(gs_change, bad_gs)
|
||||
_ASM_EXTABLE(.Lgs_change, bad_gs)
|
||||
.section .fixup, "ax"
|
||||
/* running with kernelgs */
|
||||
bad_gs:
|
||||
|
@ -1019,13 +1019,13 @@ ENTRY(error_entry)
|
|||
movl %ecx, %eax /* zero extend */
|
||||
cmpq %rax, RIP+8(%rsp)
|
||||
je .Lbstep_iret
|
||||
cmpq $gs_change, RIP+8(%rsp)
|
||||
cmpq $.Lgs_change, RIP+8(%rsp)
|
||||
jne .Lerror_entry_done
|
||||
|
||||
/*
|
||||
* hack: gs_change can fail with user gsbase. If this happens, fix up
|
||||
* hack: .Lgs_change can fail with user gsbase. If this happens, fix up
|
||||
* gsbase and proceed. We'll fix up the exception and land in
|
||||
* gs_change's error handler with kernel gsbase.
|
||||
* .Lgs_change's error handler with kernel gsbase.
|
||||
*/
|
||||
jmp .Lerror_entry_from_usermode_swapgs
|
||||
|
||||
|
|
Loading…
Reference in New Issue