Commit e6b04b6b authored by Jan Beulich's avatar Jan Beulich Committed by Ingo Molnar

x86-64: Fix unwind annotations in syscall stubs

With the return address removed from the stack, these should
really refer to their caller's register state.
Signed-off-by: default avatarJan Beulich <jbeulich@novell.com>
Acked-by: default avatarAlexander van Heukelum <heukelum@fastmail.fm>
LKML-Reference: <4C7FBA3D0200007800013F61@vpn.id2.novell.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 2bfc96a1
...@@ -714,9 +714,8 @@ END(ptregscall_common) ...@@ -714,9 +714,8 @@ END(ptregscall_common)
ENTRY(stub_execve) ENTRY(stub_execve)
CFI_STARTPROC CFI_STARTPROC
popq %r11 addq $8, %rsp
CFI_ADJUST_CFA_OFFSET -8 PARTIAL_FRAME 0
CFI_REGISTER rip, r11
SAVE_REST SAVE_REST
FIXUP_TOP_OF_STACK %r11 FIXUP_TOP_OF_STACK %r11
movq %rsp, %rcx movq %rsp, %rcx
...@@ -735,7 +734,7 @@ END(stub_execve) ...@@ -735,7 +734,7 @@ END(stub_execve)
ENTRY(stub_rt_sigreturn) ENTRY(stub_rt_sigreturn)
CFI_STARTPROC CFI_STARTPROC
addq $8, %rsp addq $8, %rsp
CFI_ADJUST_CFA_OFFSET -8 PARTIAL_FRAME 0
SAVE_REST SAVE_REST
movq %rsp,%rdi movq %rsp,%rdi
FIXUP_TOP_OF_STACK %r11 FIXUP_TOP_OF_STACK %r11
...@@ -1445,7 +1444,6 @@ error_swapgs: ...@@ -1445,7 +1444,6 @@ error_swapgs:
error_sti: error_sti:
TRACE_IRQS_OFF TRACE_IRQS_OFF
ret ret
CFI_ENDPROC
/* /*
* There are two places in the kernel that can potentially fault with * There are two places in the kernel that can potentially fault with
...@@ -1470,6 +1468,7 @@ bstep_iret: ...@@ -1470,6 +1468,7 @@ bstep_iret:
/* Fix truncated RIP */ /* Fix truncated RIP */
movq %rcx,RIP+8(%rsp) movq %rcx,RIP+8(%rsp)
jmp error_swapgs jmp error_swapgs
CFI_ENDPROC
END(error_entry) END(error_entry)
......
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