Paolo Bonzini <pbonz...@redhat.com> writes: > On 02/03/2016 12:04, Markus Armbruster wrote: >> For better or worse, fallback to INTx has never been implemented in >> ivshmem. You can either ask for an INTx-only device (msi=off), or for >> an MSI-X-only device (msi=on). The latter *cannot* do interrupts until >> you enable MSI-X. > > Aha, now I see what you mean: > > if (ivshmem_has_feature(s, IVSHMEM_MSI)) { > msix_notify(pdev, vector); > } else { > ivshmem_IntrStatus_write(s, 1); > } > > So I believe your patch is okay.
I can try to explain it a bit better in the comment and/or commit message when I respin. > Perhaps you could also change the > interrupt pin for new machine types (even without changing the > revision), but it's not necessary to do it. I chose not to bother, because after PATCH 34, the non-deprecated devices are all revision 1 (correct Interrupt Pin register). >> Similarly, the ivshmem-doorbell device introduced later in this series >> can only do MSI-X, and the ivshmem-plain device cannot do interrupts at >> all. > > Here: > > dev->config[PCI_INTERRUPT_PIN] = 0x01; /* interrupt pin 1 */ Ah! I looked only for pci_config_set_interrupt_pin().