mirror of https://gitee.com/openkylin/linux.git
x86/debug: Drop several unnecessary CFI annotations
With the conversion of the register saving code from macros to functions, and with those functions not clobbering most of the registers they spill, there's no need to annotate most of the spill operations; the only exceptions being %rbx (always modified) and %rcx (modified on the error_kernelspace: path). Also remove a bogus commented out annotation - there's no register %orig_rax after all. Signed-off-by: Jan Beulich <jbeulich@suse.com> Link: http://lkml.kernel.org/r/53AAE69A020000780001D3C7@mail.emea.novell.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
parent
1795cd9b3a
commit
3bab13b015
|
@ -207,7 +207,6 @@ ENDPROC(native_usergs_sysret64)
|
|||
*/
|
||||
.macro XCPT_FRAME start=1 offset=0
|
||||
INTR_FRAME \start, RIP+\offset-ORIG_RAX
|
||||
/*CFI_REL_OFFSET orig_rax, ORIG_RAX-ORIG_RAX*/
|
||||
.endm
|
||||
|
||||
/*
|
||||
|
@ -287,21 +286,21 @@ ENDPROC(native_usergs_sysret64)
|
|||
ENTRY(save_paranoid)
|
||||
XCPT_FRAME 1 RDI+8
|
||||
cld
|
||||
movq_cfi rdi, RDI+8
|
||||
movq_cfi rsi, RSI+8
|
||||
movq %rdi, RDI+8(%rsp)
|
||||
movq %rsi, RSI+8(%rsp)
|
||||
movq_cfi rdx, RDX+8
|
||||
movq_cfi rcx, RCX+8
|
||||
movq_cfi rax, RAX+8
|
||||
movq_cfi r8, R8+8
|
||||
movq_cfi r9, R9+8
|
||||
movq_cfi r10, R10+8
|
||||
movq_cfi r11, R11+8
|
||||
movq %r8, R8+8(%rsp)
|
||||
movq %r9, R9+8(%rsp)
|
||||
movq %r10, R10+8(%rsp)
|
||||
movq %r11, R11+8(%rsp)
|
||||
movq_cfi rbx, RBX+8
|
||||
movq_cfi rbp, RBP+8
|
||||
movq_cfi r12, R12+8
|
||||
movq_cfi r13, R13+8
|
||||
movq_cfi r14, R14+8
|
||||
movq_cfi r15, R15+8
|
||||
movq %rbp, RBP+8(%rsp)
|
||||
movq %r12, R12+8(%rsp)
|
||||
movq %r13, R13+8(%rsp)
|
||||
movq %r14, R14+8(%rsp)
|
||||
movq %r15, R15+8(%rsp)
|
||||
movl $1,%ebx
|
||||
movl $MSR_GS_BASE,%ecx
|
||||
rdmsr
|
||||
|
@ -1395,21 +1394,21 @@ ENTRY(error_entry)
|
|||
CFI_ADJUST_CFA_OFFSET 15*8
|
||||
/* oldrax contains error code */
|
||||
cld
|
||||
movq_cfi rdi, RDI+8
|
||||
movq_cfi rsi, RSI+8
|
||||
movq_cfi rdx, RDX+8
|
||||
movq_cfi rcx, RCX+8
|
||||
movq_cfi rax, RAX+8
|
||||
movq_cfi r8, R8+8
|
||||
movq_cfi r9, R9+8
|
||||
movq_cfi r10, R10+8
|
||||
movq_cfi r11, R11+8
|
||||
movq %rdi, RDI+8(%rsp)
|
||||
movq %rsi, RSI+8(%rsp)
|
||||
movq %rdx, RDX+8(%rsp)
|
||||
movq %rcx, RCX+8(%rsp)
|
||||
movq %rax, RAX+8(%rsp)
|
||||
movq %r8, R8+8(%rsp)
|
||||
movq %r9, R9+8(%rsp)
|
||||
movq %r10, R10+8(%rsp)
|
||||
movq %r11, R11+8(%rsp)
|
||||
movq_cfi rbx, RBX+8
|
||||
movq_cfi rbp, RBP+8
|
||||
movq_cfi r12, R12+8
|
||||
movq_cfi r13, R13+8
|
||||
movq_cfi r14, R14+8
|
||||
movq_cfi r15, R15+8
|
||||
movq %rbp, RBP+8(%rsp)
|
||||
movq %r12, R12+8(%rsp)
|
||||
movq %r13, R13+8(%rsp)
|
||||
movq %r14, R14+8(%rsp)
|
||||
movq %r15, R15+8(%rsp)
|
||||
xorl %ebx,%ebx
|
||||
testl $3,CS+8(%rsp)
|
||||
je error_kernelspace
|
||||
|
@ -1427,6 +1426,7 @@ error_sti:
|
|||
* compat mode. Check for these here too.
|
||||
*/
|
||||
error_kernelspace:
|
||||
CFI_REL_OFFSET rcx, RCX+8
|
||||
incl %ebx
|
||||
leaq irq_return_iret(%rip),%rcx
|
||||
cmpq %rcx,RIP+8(%rsp)
|
||||
|
|
Loading…
Reference in New Issue