On Tue, 2011-08-02 at 19:32 +0200, Jan Kiszka wrote: > On 2011-08-02 19:02, Alex Williamson wrote: > > On Tue, 2011-08-02 at 14:27 +0200, Jan Kiszka wrote: > >> Add checks for KVM_CAP_ASSIGN_DEV_IRQ (MSI) and KVM_CAP_DEVICE_MSIX, do > >> not set up MSI/MSI-X if the required kernel features are missing. > >> > >> Signed-off-by: Jan Kiszka <jan.kiszka@xxxxxxxxxxx> > >> --- > >> hw/device-assignment.c | 6 ++++-- > >> 1 files changed, 4 insertions(+), 2 deletions(-) > >> > >> diff --git a/hw/device-assignment.c b/hw/device-assignment.c > >> index 4cc7b1a..7e965cb 100644 > >> --- a/hw/device-assignment.c > >> +++ b/hw/device-assignment.c > >> @@ -1201,7 +1201,8 @@ static int assigned_device_pci_cap_init(PCIDevice *pci_dev) > >> > >> /* Expose MSI capability > >> * MSI capability is the 1st capability in capability config */ > >> - if ((pos = pci_find_cap_offset(pci_dev, PCI_CAP_ID_MSI, 0))) { > >> + pos = pci_find_cap_offset(pci_dev, PCI_CAP_ID_MSI, 0); > >> + if (pos != 0 && kvm_check_extension(kvm_state, KVM_CAP_ASSIGN_DEV_IRQ)) { > > > > Is it even useful to have a device assigned w/o KVM_CAP_ASSIGN_DEV_IRQ? > > If that feature is lacking, we fall back to the old KVM_ASSIGN_IRQ > interface. I guess that used to work, but I bet no one tested it > recently. However, the code is there, also in the kvm core. Ah right. Not sure how much I trust that, but seems obviously correct to not expose capabilities we can't support. Acked-by: Alex Williamson <alex.williamson@xxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html