bonding: fix initial link status of slave

On Fortville NIC, link status change interrupt callback is not executed when
slave in bonding is (re-)started. It causes that slave's NIC is inactive even
if its link status is up on the start.

This patch invokes lsc callback, just after port's start, to check its initial
link status and manage properly.

Signed-off-by: Tomasz Kulasek <tomaszx.kulasek@intel.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
This commit is contained in:
Tomasz Kulasek 2015-06-24 10:50:45 +02:00 committed by Thomas Monjalon
parent 0b00ab6f16
commit 414b202343

View File

@ -1361,6 +1361,11 @@ slave_configure(struct rte_eth_dev *bonded_eth_dev,
return -1;
}
/* If lsc interrupt is set, check initial slave's link status */
if (slave_eth_dev->driver->pci_drv.drv_flags & RTE_PCI_DRV_INTR_LSC)
bond_ethdev_lsc_event_callback(slave_eth_dev->data->port_id,
RTE_ETH_EVENT_INTR_LSC, &bonded_eth_dev->data->port_id);
return 0;
}