ixgbe: add xstats
[dpdk.git] / drivers / net / bonding / rte_eth_bond_pmd.c
index 5a2fbef..989e878 100644 (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;
 }
 
@@ -1520,8 +1525,8 @@ bond_ethdev_stop(struct rte_eth_dev *eth_dev)
                bond_mode_8023ad_stop(eth_dev);
 
                /* Discard all messages to/from mode 4 state machines */
-               for (i = 0; i < internals->slave_count; i++) {
-                       port = &mode_8023ad_ports[internals->slaves[i].port_id];
+               for (i = 0; i < internals->active_slave_count; i++) {
+                       port = &mode_8023ad_ports[internals->active_slaves[i]];
 
                        RTE_VERIFY(port->rx_ring != NULL);
                        while (rte_ring_dequeue(port->rx_ring, &pkt) != -ENOENT)