Re: [PATCH v4] xen: get rid of paravirt op adjust_exception_frame

From: Boris Ostrovsky
Date: Wed Aug 16 2017 - 11:12:27 EST


On 08/11/2017 10:54 AM, Juergen Gross wrote:
> 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.
>
> Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
> ---
> arch/x86/entry/entry_64.S | 23 ++-------
> arch/x86/entry/entry_64_compat.S | 1 -
> arch/x86/include/asm/paravirt.h | 5 --
> arch/x86/include/asm/paravirt_types.h | 4 --
> arch/x86/include/asm/proto.h | 3 ++
> arch/x86/include/asm/traps.h | 33 ++++++++++--
> arch/x86/kernel/asm-offsets_64.c | 1 -
> arch/x86/kernel/paravirt.c | 3 --
> arch/x86/xen/enlighten_pv.c | 96 +++++++++++++++++++++++------------
> arch/x86/xen/irq.c | 3 --
> arch/x86/xen/xen-asm_64.S | 45 ++++++++++++++--
> arch/x86/xen/xen-ops.h | 1 -
> 12 files changed, 140 insertions(+), 78 deletions(-)

Reviewed-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>

Applied to for-linus-4.14.

-boris