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

Re: [Xen-devel] pvops-2.6.32 - Interrupt routing problem



On Tue, Mar 23, 2010 at 02:04:24PM +0000, Jan Beulich wrote:
> >In the Linux kernel, xen_register_gsi (arch/x86/xen/pci.c). The io-apic
> Ah, okay. The way you wrote it I read that PHYSDEVOP_setup_gsi
> would do the unmasking. And looking at xen_register_gsi(), I can't
> really see where it would unmask the interrupt either. The only place
> I see it getting unmasked is in startup_pirq() (through
> EVTCHNOP_bind_pirq).

Are you ignoring that we speak about the IO-APIC code in Xen? This have
nothing to do with EVTCHNOP_bind_pirq.

> >support in Xen is a copy of the Linux code and behaves similar.
> Mostly, but not in all details.

Well, this is nit-picking. The behaviour is the same.

> >No. The interrupt setup is always done before the device setup. This is
> >core kernel functionality.
> Yes. But that is unrelated to the choice of keeping masked/unmasking
> certain interrupts.

No. Interrupts are unmasked before the device is configured.

> >Please explain why you think this is restricted to edge triggered. This
> >is called from the PCI interrupt setup, and usualy used with level
> >triggered interrupts.
> This is simply what Linux does (at the end of setup_ioapic_entry()).

No, it is not. This function is not used while running under Xen.

Native uses io_apic_set_pci_routing via mp_register_gsi to setup the
GSI. In the Xen case this functionality is hidden behind
PHYSDEVOP_setup_gsi.

Bastian

-- 
        "Beauty is transitory."
        "Beauty survives."
                -- Spock and Kirk, "That Which Survives", stardate unknown

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

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