Jeroen Van den Keybus wrote:
>     arch_setup_msi_irq() creates an IRQ on-the-fly from the current
>     descriptor which is being converted to an MSI interrupt using
>     pci_msi_enable(). From that point, the I-pipe might have an obsolete
>     view of the interrupt map. I suspect an I-pipe issue here.
> I think the I-pipe is alright. It only cares for the actual interrupt
> numbers and irq_desc[] should be current with these numbers upon the
> ipipe_virtualize_irq call, which occurs only after enabling MSI, right ?

The I-pipe virtualizes all IOAPIC and ISA interrupts upon startup. Then,
any code calling pci_msi_enable() would end up allocating a new MSI
interrupt vector.

> Currently it looks like every PCI config space access instruction in
> read_msi_msg() (used to perform set_msi_irq_affinity) freezes the
> machine. I have absolutely no clue yet why this happens.

Wild trivial guess, is the irq parameter the expected one, since the
rest depends on it?

> Jeroen.
>     --
>     Philippe.


Xenomai-core mailing list

Reply via email to