Re: [patch V9-1 13/39] x86/entry: Switch XEN/PV hypercall entry to IDTENTRY

From: JÃrgen GroÃ
Date: Tue May 26 2020 - 03:44:18 EST


On 22.05.20 20:32, Thomas Gleixner wrote:
Convert the XEN/PV hypercall to IDTENTRY:

- Emit the ASM stub with DECLARE_IDTENTRY
- Remove the ASM idtentry in 64bit
- Remove the open coded ASM entry code in 32bit
- Remove the old prototypes

The handler stubs need to stay in ASM code as it needs corner case handling
and adjustment of the stack pointer.

Provide a new C function which invokes the entry/exit handling and calls
into the XEN handler on the interrupt stack if required.

The exit code is slightly different from the regular idtentry_exit() on
non-preemptible kernels. If the hypercall is preemptible and need_resched()
is set then XEN provides a preempt hypercall scheduling function.

Move this functionality into the entry code so it can use the existing
idtentry functionality.

Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

Acked-by: Juergen Gross <jgross@xxxxxxxx>
Tested-by: Juergen Gross <jgross@xxxxxxxx>


Juergen