[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v10 07/10] xen: remove workaround to inject evtchn_irq on irq enable



>>> On 05.08.14 at 13:26, <stefano.stabellini@xxxxxxxxxxxxx> wrote:
> evtchn_upcall_pending is already set by common code at vcpu creation,
> therefore on ARM we also need to call vgic_vcpu_inject_irq for it.
> Currently we do that from vgic_enable_irqs as a workaround.
> 
> Do this properly by introducing an appropriate arch specific hook:
> arch_evtchn_inject. arch_evtchn_inject is called by map_vcpu_info to
> inject the evtchn irq into the guest. On ARM is implemented by calling
> vgic_vcpu_inject_irq.
> 
> On x86 guests typically don't call VCPUOP_register_vcpu_info on vcpu0,
> therefore avoiding the issue. However theoretically they could call
> VCPUOP_register_vcpu_info on vcpu0 and in that case Xen would need to
> inject the event channel notification into the guest if the guest is
> HVM. So implement arch_evtchn_inject on x86 by calling
> hvm_assert_evtchn_irq.
> 
> Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>

For the non-ARM parts
Acked-by: Jan Beulich <jbeulich@xxxxxxxx>
provided you make ...

> --- a/xen/include/xen/event.h
> +++ b/xen/include/xen/event.h
> @@ -69,6 +69,9 @@ int guest_enabled_event(struct vcpu *v, uint32_t virq);
>  /* Notify remote end of a Xen-attached event channel.*/
>  void notify_via_xen_event_channel(struct domain *ld, int lport);
>  
> +/* inject an event channel notification into the guest */
> +void arch_evtchn_inject(struct vcpu *v);

... this comment match coding style.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.