[dpdk-dev] [PATCH v4] net/ice: fix setting max frame size

Ye Xiaolong xiaolong.ye at intel.com
Mon Nov 4 03:56:30 CET 2019


On 10/30, Min JiaqiX wrote:
>Max frame size is not set to HW, so packets above the MTU
>do not get dropped by HW. The patch fixed the issue.
>
>Fixes: 50370662b727 ("net/ice: support device and queue ops")
>Cc: stable at dpdk.org
>
>Signed-off-by: Min JiaqiX <jiaqix.min at intel.com>
>
>---
>v4:
>* Removed Reviewed-by
>* Checked and set defaut max frame size to HW in start ops.
>v3:
>* Changed Fixes line.
>v2:
>* Changed commit message.
>---
> drivers/net/ice/ice_ethdev.c | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
>diff --git a/drivers/net/ice/ice_ethdev.c b/drivers/net/ice/ice_ethdev.c
>index d74675842..d8aa68f07 100644
>--- a/drivers/net/ice/ice_ethdev.c
>+++ b/drivers/net/ice/ice_ethdev.c
>@@ -2724,6 +2724,16 @@ ice_dev_start(struct rte_eth_dev *dev)
> 
> 	pf->adapter_stopped = false;
> 
>+	/* Set the max frame size to default value*/
>+	if (pf->dev_data->dev_conf.rxmode.max_rx_pkt_len == 0) {
>+		pf->dev_data->dev_conf.rxmode.max_rx_pkt_len =
>+			RTE_ETHER_MAX_LEN;

I think ICE_FRAME_SIZE_MAX is more suitable here.

>+	}
>+
>+	/* Set the max frame size to HW*/
>+	ice_aq_set_mac_cfg(hw,
>+		pf->dev_data->dev_conf.rxmode.max_rx_pkt_len, NULL);

What about

	max_frame_size = pf->dev_data->dev_conf.rxmode.max_rx_pkt_len ?
		pf->dev_data->dev_conf.rxmode.max_rx_pkt_len : ICE_FRAME_SIZE_MAX;

	/* Set the max frame size to HW*/
	ice_aq_set_mac_cfg(hw, max_frame_size, NULL);


Thanks,
Xiaolong
>+
> 	return 0;
> 
> 	/* stop the started queues if failed to start all queues */
>-- 
>2.17.1
>


More information about the dev mailing list