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

Re: [Xen-devel] [PATCH v7 23/32] xen/x86: make sure the HVM callback vector is correctly set



> -----Original Message-----
> From: xen-devel-bounces@xxxxxxxxxxxxx [mailto:xen-devel-
> bounces@xxxxxxxxxxxxx] On Behalf Of Andrew Cooper
> Sent: 14 October 2015 17:02
> To: Jan Beulich; Roger Pau Monne
> Cc: xen-devel@xxxxxxxxxxxxxxxxxxxx
> Subject: Re: [Xen-devel] [PATCH v7 23/32] xen/x86: make sure the HVM
> callback vector is correctly set
> 
> On 14/10/15 16:54, Jan Beulich wrote:
> >>>> On 02.10.15 at 17:48, <roger.pau@xxxxxxxxxx> wrote:
> >> --- a/xen/arch/x86/hvm/irq.c
> >> +++ b/xen/arch/x86/hvm/irq.c
> >> @@ -330,6 +330,10 @@ void hvm_set_callback_via(struct domain *d,
> uint64_t
> >> via)
> >>           (via_type > HVMIRQ_callback_vector) )
> >>          via_type = HVMIRQ_callback_none;
> >>
> >> +    if ( via_type != HVMIRQ_callback_vector &&
> >> +         (!has_vlapic(d) || !has_vioapic(d) || !has_vpic(d)) )
> >> +        return;
> > Why are both IO-APIC and PIC required? Doesn't one suffice, or
> > can't MSI-like interrupts even get delivered without either?
> 
> In real hardware, MSI-like interrupts have no interaction with the
> IO-APIC or PIC.
> 
> In fact, the purpose of the IO-APIC is to turn legacy line interrupts
> into MSI interrupts.  The PICs were from the pre-MSI days where it
> asserted the #INTR pin on the processor.
> 
> Our virtual interrupt infrastructure should behave in a consistent manor.
> 

IIRC both the intx and gsi variants of the callback via go in at the vioapic 
level.

  Paul

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

_______________________________________________
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®.