X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fdevices%2Fvirtio%2Fpci.c;h=79bd00475700baa981c27cd3c99a2f4c002c8b31;hb=5db2f4a4312112ab57043ce88f10edc4acc141ec;hp=908aba759624524a09cbf3f83b5314b887a1c8e7;hpb=09bf91ad8d492763879303c9ff31dbcba5f9732b;p=vpp.git diff --git a/src/vnet/devices/virtio/pci.c b/src/vnet/devices/virtio/pci.c index 908aba75962..79bd0047570 100644 --- a/src/vnet/devices/virtio/pci.c +++ b/src/vnet/devices/virtio/pci.c @@ -1451,10 +1451,12 @@ virtio_pci_create_if (vlib_main_t * vm, virtio_pci_create_if_args_t * args) vif->support_int_mode = 1; virtio_log_debug (vif, "device supports msix interrupts"); } - else if (interrupt_count == 1) + else { /* - * if msix table-size is 1, fall back to intX. + * WARN: performance will be sub-optimal. + * Fall back to intX, if msix table-size is 1 or + * if UIO driver is being used. */ if ((error = vlib_pci_register_intx_handler (vm, h, &virtio_pci_irq_handler))) @@ -1466,15 +1468,6 @@ virtio_pci_create_if (vlib_main_t * vm, virtio_pci_create_if_args_t * args) vif->support_int_mode = 1; virtio_log_debug (vif, "pci register interrupt handler"); } - else - { - /* - * WARN: intX is showing some weird behaviour. - * Please don't use interrupt mode with UIO driver. - */ - vif->support_int_mode = 0; - virtio_log_debug (vif, "driver is configured in poll mode only"); - } if ((error = vlib_pci_intr_enable (vm, h))) {