Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

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
Loading
Loading
Loading
Loading
+4 −5
Original line number Diff line number Diff line
@@ -714,9 +714,8 @@ END(ptregscall_common)

ENTRY(stub_execve)
	CFI_STARTPROC
	popq %r11
	CFI_ADJUST_CFA_OFFSET -8
	CFI_REGISTER rip, r11
	addq $8, %rsp
	PARTIAL_FRAME 0
	SAVE_REST
	FIXUP_TOP_OF_STACK %r11
	movq %rsp, %rcx
@@ -735,7 +734,7 @@ END(stub_execve)
ENTRY(stub_rt_sigreturn)
	CFI_STARTPROC
	addq $8, %rsp
	CFI_ADJUST_CFA_OFFSET	-8
	PARTIAL_FRAME 0
	SAVE_REST
	movq %rsp,%rdi
	FIXUP_TOP_OF_STACK %r11
@@ -1445,7 +1444,6 @@ error_swapgs:
error_sti:
	TRACE_IRQS_OFF
	ret
	CFI_ENDPROC

/*
 * There are two places in the kernel that can potentially fault with
@@ -1470,6 +1468,7 @@ bstep_iret:
	/* Fix truncated RIP */
	movq %rcx,RIP+8(%rsp)
	jmp error_swapgs
	CFI_ENDPROC
END(error_entry)