virtio: fix link state interrupt
authorBernard Iremonger <bernard.iremonger@intel.com>
Fri, 4 Dec 2015 15:14:26 +0000 (15:14 +0000)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Mon, 7 Dec 2015 00:03:12 +0000 (01:03 +0100)
call rte_eth_copy_pci_info() after the RTE_PCI_DRV_INTR_LSC
has been initialised.

Fixes: eeefe73f0af1 ("drivers: copy PCI device info to ethdev data")

Reported-by: Stephen Hemminger <stephen@networkplumber.org>
Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
drivers/net/virtio/virtio_ethdev.c

index 74c00ee..ae7c281 100644 (file)
@@ -1289,8 +1289,6 @@ eth_virtio_dev_init(struct rte_eth_dev *eth_dev)
 
        pci_dev = eth_dev->pci_dev;
 
-       rte_eth_copy_pci_info(eth_dev, pci_dev);
-
        if (virtio_resource_init(pci_dev) < 0)
                return -1;
 
@@ -1311,6 +1309,8 @@ eth_virtio_dev_init(struct rte_eth_dev *eth_dev)
        if (!vtpci_with_feature(hw, VIRTIO_NET_F_STATUS))
                pci_dev->driver->drv_flags &= ~RTE_PCI_DRV_INTR_LSC;
 
+       rte_eth_copy_pci_info(eth_dev, pci_dev);
+
        rx_func_get(eth_dev);
 
        /* Setting up rx_header size for the device */