[dpdk-dev] [PATCH] net/ixgbe: delete MAC control frame fwd in struct adapter

Guinan Sun guinanx.sun at intel.com
Fri May 22 08:12:08 CEST 2020


If some user set mac_ctrl_frame_fwd to 1 from fc ops,
then he do a port reset process of

testpmd> start
testpmd> set flow_ctrl mac_ctrl_frame_fwd on 0
testpmd> stop
testpmd> port stop 0
testpmd> port start 0
testpmd> start

Then after this process, the mac_ctrl_frame_fwd has been change to "off",
so we should delete "adapter->mac_ctrl_frame_fwd = 0;" from dev-stop.

In addition, add a value to mac_ctrl_frame_fwd in
the ixgbe_flow_ctrl_get () function.

Fixes: a524f550da6e ("net/ixgbe: fix flow control mode setting")
Cc: stable at dpdk.org

Signed-off-by: SunGuinan <guinanx.sun at intel.com>
---
 drivers/net/ixgbe/ixgbe_ethdev.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b/drivers/net/ixgbe/ixgbe_ethdev.c
index f8a84c565..dd4023f01 100644
--- a/drivers/net/ixgbe/ixgbe_ethdev.c
+++ b/drivers/net/ixgbe/ixgbe_ethdev.c
@@ -2939,8 +2939,6 @@ ixgbe_dev_stop(struct rte_eth_dev *dev)
 
 	adapter->rss_reta_updated = 0;
 
-	adapter->mac_ctrl_frame_fwd = 0;
-
 	hw->adapter_stopped = true;
 }
 
@@ -4754,6 +4752,8 @@ ixgbe_flow_ctrl_get(struct rte_eth_dev *dev, struct rte_eth_fc_conf *fc_conf)
 	 * MFLCN register.
 	 */
 	mflcn_reg = IXGBE_READ_REG(hw, IXGBE_MFLCN);
+	fc_conf->mac_ctrl_frame_fwd = mflcn_reg;
+
 	if (mflcn_reg & (IXGBE_MFLCN_RPFCE | IXGBE_MFLCN_RFCE))
 		rx_pause = 1;
 	else
-- 
2.17.1



More information about the dev mailing list