Re: [PATCH 1/3] paravirt,xen: remove xen_patch()

From: Peter Zijlstra
Date: Thu Aug 10 2017 - 12:29:34 EST


On Thu, Aug 10, 2017 at 06:24:53PM +0200, Peter Zijlstra wrote:
> -ENTRY(xen_irq_enable_direct)
> - FRAME_BEGIN
> - /* Unmask events */
> - movb $0, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_mask
> -
> - /*
> - * Preempt here doesn't matter because that will deal with any
> - * pending interrupts. The pending check may end up being run
> - * on the wrong CPU, but that doesn't hurt.
> - */
> -
> - /* Test for pending */
> - testb $0xff, PER_CPU_VAR(xen_vcpu_info) + XEN_vcpu_info_pending
> - jz 1f
> -
> -2: call check_events
> -1:
> -ENDPATCH(xen_irq_enable_direct)
> - FRAME_END
> - ret
> - ENDPROC(xen_irq_enable_direct)
> - RELOC(xen_irq_enable_direct, 2b+1)

Oh my bad, part of that is still used.

arch/x86/xen/enlighten_pv.c: pv_irq_ops.irq_enable = __PV_IS_CALLEE_SAVE(xen_irq_enable_direct);

It just needs cleanups for the ENDPATCH and such.