[dpdk-stable] [PATCH 19.11 3/3] net/bnxt: remove a redundant variable

Kalesh A P kalesh-anakkur.purayil at broadcom.com
Fri Feb 28 09:13:59 CET 2020


From: Kalesh AP <kalesh-anakkur.purayil at broadcom.com>

[ upstream commit 90c957ef3b11f361dd8e6519d9e195f01295b23e ]

Use "dev->data->dev_started" state, instead of local "dev_stopped"
to check whether port has been started or not.

Fixes: 316e412299fd ("net/bnxt: fix crash when closing")

Signed-off-by: Somnath Kotur <somnath.kotur at broadcom.com>
Signed-off-by: Kalesh AP <kalesh-anakkur.purayil at broadcom.com>
Reviewed-by: Santoshkumar Karanappa Rastapur <santosh.rastapur at broadcom.com>
Reviewed-by: Ajit Khaparde <ajit.khaparde at broadcom.com>
---
 drivers/net/bnxt/bnxt.h        |  1 -
 drivers/net/bnxt/bnxt_ethdev.c | 24 ++++++++++--------------
 2 files changed, 10 insertions(+), 15 deletions(-)

diff --git a/drivers/net/bnxt/bnxt.h b/drivers/net/bnxt/bnxt.h
index 6422753..93735a2 100644
--- a/drivers/net/bnxt/bnxt.h
+++ b/drivers/net/bnxt/bnxt.h
@@ -649,7 +649,6 @@ struct bnxt {
 #define BNXT_OUTER_TPID_BD_SHFT	16
 	uint32_t		outer_tpid_bd;
 	struct bnxt_pf_info	pf;
-	uint8_t			dev_stopped;
 	uint8_t			vxlan_port_cnt;
 	uint8_t			geneve_port_cnt;
 	uint16_t		vxlan_port;
diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c
index c21a05a..802045d 100644
--- a/drivers/net/bnxt/bnxt_ethdev.c
+++ b/drivers/net/bnxt/bnxt_ethdev.c
@@ -860,9 +860,9 @@ static int bnxt_dev_start_op(struct rte_eth_dev *eth_dev)
 		goto error;
 
 	eth_dev->data->scattered_rx = bnxt_scattered_rx(eth_dev);
+	eth_dev->data->dev_started = 1;
 
 	bnxt_link_update(eth_dev, 1, ETH_LINK_UP);
-	bp->dev_stopped = 0;
 
 	if (rx_offloads & DEV_RX_OFFLOAD_VLAN_FILTER)
 		vlan_mask |= ETH_VLAN_FILTER_MASK;
@@ -875,7 +875,6 @@ static int bnxt_dev_start_op(struct rte_eth_dev *eth_dev)
 	eth_dev->rx_pkt_burst = bnxt_receive_function(eth_dev);
 	eth_dev->tx_pkt_burst = bnxt_transmit_function(eth_dev);
 
-	eth_dev->data->dev_started = 1;
 	pthread_mutex_lock(&bp->def_cp_lock);
 	bnxt_schedule_fw_health_check(bp);
 	pthread_mutex_unlock(&bp->def_cp_lock);
@@ -886,7 +885,7 @@ static int bnxt_dev_start_op(struct rte_eth_dev *eth_dev)
 	bnxt_shutdown_nic(bp);
 	bnxt_free_tx_mbufs(bp);
 	bnxt_free_rx_mbufs(bp);
-	bp->dev_stopped = 1;
+	eth_dev->data->dev_started = 0;
 	return rc;
 }
 
@@ -957,7 +956,6 @@ static void bnxt_dev_stop_op(struct rte_eth_dev *eth_dev)
 	bnxt_int_handler(eth_dev);
 	bnxt_shutdown_nic(bp);
 	bnxt_hwrm_if_change(bp, 0);
-	bp->dev_stopped = 1;
 	bp->rx_cosq_cnt = 0;
 }
 
@@ -965,7 +963,7 @@ static void bnxt_dev_close_op(struct rte_eth_dev *eth_dev)
 {
 	struct bnxt *bp = eth_dev->data->dev_private;
 
-	if (bp->dev_stopped == 0)
+	if (eth_dev->data->dev_started)
 		bnxt_dev_stop_op(eth_dev);
 
 	if (eth_dev->data->mac_addrs != NULL) {
@@ -1155,7 +1153,7 @@ static int bnxt_promiscuous_enable_op(struct rte_eth_dev *eth_dev)
 		return rc;
 
 	/* Filter settings will get applied when port is started */
-	if (bp->dev_stopped == 1)
+	if (!eth_dev->data->dev_started)
 		return 0;
 
 	if (bp->vnic_info == NULL)
@@ -1184,7 +1182,7 @@ static int bnxt_promiscuous_disable_op(struct rte_eth_dev *eth_dev)
 		return rc;
 
 	/* Filter settings will get applied when port is started */
-	if (bp->dev_stopped == 1)
+	if (!eth_dev->data->dev_started)
 		return 0;
 
 	if (bp->vnic_info == NULL)
@@ -1213,7 +1211,7 @@ static int bnxt_allmulticast_enable_op(struct rte_eth_dev *eth_dev)
 		return rc;
 
 	/* Filter settings will get applied when port is started */
-	if (bp->dev_stopped == 1)
+	if (!eth_dev->data->dev_started)
 		return 0;
 
 	if (bp->vnic_info == NULL)
@@ -1242,7 +1240,7 @@ static int bnxt_allmulticast_disable_op(struct rte_eth_dev *eth_dev)
 		return rc;
 
 	/* Filter settings will get applied when port is started */
-	if (bp->dev_stopped == 1)
+	if (!eth_dev->data->dev_started)
 		return 0;
 
 	if (bp->vnic_info == NULL)
@@ -1974,7 +1972,7 @@ bnxt_vlan_offload_set_op(struct rte_eth_dev *dev, int mask)
 		return rc;
 
 	/* Filter settings will get applied when port is started */
-	if (bp->dev_stopped == 1)
+	if (!dev->data->dev_started)
 		return 0;
 
 	if (mask & ETH_VLAN_FILTER_MASK) {
@@ -3881,7 +3879,7 @@ static void bnxt_dev_cleanup(struct bnxt *bp)
 {
 	bnxt_set_hwrm_link_config(bp, false);
 	bp->link_info.link_up = 0;
-	if (bp->dev_stopped == 0)
+	if (bp->eth_dev->data->dev_started)
 		bnxt_dev_stop_op(bp->eth_dev);
 
 	bnxt_uninit_resources(bp, true);
@@ -4815,8 +4813,6 @@ bnxt_dev_init(struct rte_eth_dev *eth_dev)
 
 	bp = eth_dev->data->dev_private;
 
-	bp->dev_stopped = 1;
-
 	if (bnxt_vf_pciid(pci_dev->id.device_id))
 		bp->flags |= BNXT_FLAG_VF;
 
@@ -4918,7 +4914,7 @@ bnxt_dev_uninit(struct rte_eth_dev *eth_dev)
 		bp->rx_mem_zone = NULL;
 	}
 
-	if (bp->dev_stopped == 0)
+	if (eth_dev->data->dev_started)
 		bnxt_dev_close_op(eth_dev);
 	if (bp->pf.vf_info)
 		rte_free(bp->pf.vf_info);
-- 
2.10.1



More information about the stable mailing list