x86/xen: Get rid of paravirt op adjust_exception_frame
authorJuergen Gross <jgross@suse.com>
Thu, 31 Aug 2017 17:42:49 +0000 (19:42 +0200)
committerThomas Gleixner <tglx@linutronix.de>
Thu, 31 Aug 2017 19:35:10 +0000 (21:35 +0200)
commit5878d5d6fdef6447d73b0acc121ba445bef37f53
treeb4d36a16451274496a02a43adef75a68b84fdf6f
parentef1d4deab953ecb1dfcf9f167043bda8b3f14a11
x86/xen: Get rid of paravirt op adjust_exception_frame

When running as Xen pv-guest the exception frame on the stack contains
%r11 and %rcx additional to the other data pushed by the processor.

Instead of having a paravirt op being called for each exception type
prepend the Xen specific code to each exception entry. When running as
Xen pv-guest just use the exception entry with prepended instructions,
otherwise use the entry without the Xen specific code.

[ tglx: Merged through tip to avoid ugly merge conflict ]

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: xen-devel@lists.xenproject.org
Cc: boris.ostrovsky@oracle.com
Cc: luto@amacapital.net
Link: http://lkml.kernel.org/r/20170831174249.26853-1-jg@pfupf.net
12 files changed:
arch/x86/entry/entry_64.S
arch/x86/entry/entry_64_compat.S
arch/x86/include/asm/paravirt.h
arch/x86/include/asm/paravirt_types.h
arch/x86/include/asm/proto.h
arch/x86/include/asm/traps.h
arch/x86/kernel/asm-offsets_64.c
arch/x86/kernel/paravirt.c
arch/x86/xen/enlighten_pv.c
arch/x86/xen/irq.c
arch/x86/xen/xen-asm_64.S
arch/x86/xen/xen-ops.h