version: 21.11-rc0
[dpdk.git] / drivers / net / bonding / rte_eth_bond_pmd.c
index 24e3cf3..a675566 100644 (file)
@@ -1805,12 +1805,13 @@ slave_configure(struct rte_eth_dev *bonded_eth_dev,
                                != 0)
                        return errval;
 
-               if (bond_ethdev_8023ad_flow_verify(bonded_eth_dev,
-                               slave_eth_dev->data->port_id) != 0) {
+               errval = bond_ethdev_8023ad_flow_verify(bonded_eth_dev,
+                               slave_eth_dev->data->port_id);
+               if (errval != 0) {
                        RTE_BOND_LOG(ERR,
-                               "rte_eth_tx_queue_setup: port=%d queue_id %d, err (%d)",
-                               slave_eth_dev->data->port_id, q_id, errval);
-                       return -1;
+                               "bond_ethdev_8023ad_flow_verify: port=%d, err (%d)",
+                               slave_eth_dev->data->port_id, errval);
+                       return errval;
                }
 
                if (internals->mode4.dedicated_queues.flow[slave_eth_dev->data->port_id] != NULL)
@@ -1818,8 +1819,14 @@ slave_configure(struct rte_eth_dev *bonded_eth_dev,
                                        internals->mode4.dedicated_queues.flow[slave_eth_dev->data->port_id],
                                        &flow_error);
 
-               bond_ethdev_8023ad_flow_set(bonded_eth_dev,
+               errval = bond_ethdev_8023ad_flow_set(bonded_eth_dev,
                                slave_eth_dev->data->port_id);
+               if (errval != 0) {
+                       RTE_BOND_LOG(ERR,
+                               "bond_ethdev_8023ad_flow_set: port=%d, err (%d)",
+                               slave_eth_dev->data->port_id, errval);
+                       return errval;
+               }
        }
 
        /* Start device */
@@ -3333,8 +3340,9 @@ bond_probe(struct rte_vdev_device *dev)
        const char *name;
        struct bond_dev_private *internals;
        struct rte_kvargs *kvlist;
-       uint8_t bonding_mode, socket_id/*, agg_mode*/;
-       int  arg_count, port_id;
+       uint8_t bonding_mode;
+       int arg_count, port_id;
+       int socket_id;
        uint8_t agg_mode;
        struct rte_eth_dev *eth_dev;
 
@@ -3467,6 +3475,8 @@ bond_remove(struct rte_vdev_device *dev)
                ret = bond_ethdev_stop(eth_dev);
                bond_ethdev_close(eth_dev);
        }
+       if (internals->kvlist != NULL)
+               rte_kvargs_free(internals->kvlist);
        rte_eth_dev_release_port(eth_dev);
 
        return ret;
@@ -3775,4 +3785,7 @@ RTE_PMD_REGISTER_PARAM_STRING(net_bonding,
        "up_delay=<int> "
        "down_delay=<int>");
 
-RTE_LOG_REGISTER(bond_logtype, pmd.net.bond, NOTICE);
+/* We can't use RTE_LOG_REGISTER_DEFAULT because of the forced name for
+ * this library, see meson.build.
+ */
+RTE_LOG_REGISTER(bond_logtype, pmd.net.bonding, NOTICE);