[dpdk-dev] [PATCH] app/testpmd: revert setting MTU explicitly after configure

Chen, BoX C box.c.chen at intel.com
Fri Nov 20 02:51:11 CET 2020


Tested-by: Chen, BoX C <BoX.C.Chen at intel.com>
Thanks.

Regards,
Chen Bo

> -----Original Message-----
> From: dev <dev-bounces at dpdk.org> On Behalf Of Ferruh Yigit
> Sent: November 17, 2020 3:04
> To: Lu, Wenzhuo <wenzhuo.lu at intel.com>; Xing, Beilei
> <beilei.xing at intel.com>; Iremonger, Bernard
> <bernard.iremonger at intel.com>; Zhang, Qi Z <qi.z.zhang at intel.com>;
> Andrew Rybchenko <andrew.rybchenko at oktetlabs.ru>
> Cc: Yigit, Ferruh <ferruh.yigit at intel.com>; dev at dpdk.org; stable at dpdk.org
> Subject: [dpdk-dev] [PATCH] app/testpmd: revert setting MTU explicitly
> after configure
> 
> Setting MTU after each 'rte_eth_dev_configure()' prevents using "--max-
> pkt-len=N" parameter and "port config all max-pkt-len #" command
> 
> This is breaking DTS scatter test case which is using "--max-pkt-len=9000"
> testpmd parameter.
> 
> Reverting workaround to recover the DTS testcase.
> 
> Fixes: 1c21ee95cf52 ("app/testpmd: fix MTU after device configure")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Ferruh Yigit <ferruh.yigit at intel.com>
> ---
>  app/test-pmd/testpmd.c | 19 -------------------
>  1 file changed, 19 deletions(-)
> 
> diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index
> 48e9647fc7..33fc0fddf5 100644
> --- a/app/test-pmd/testpmd.c
> +++ b/app/test-pmd/testpmd.c
> @@ -2537,8 +2537,6 @@ start_port(portid_t pid)
>  		}
> 
>  		if (port->need_reconfig > 0) {
> -			uint16_t mtu = RTE_ETHER_MTU;
> -
>  			port->need_reconfig = 0;
> 
>  			if (flow_isolate_all) {
> @@ -2572,23 +2570,6 @@ start_port(portid_t pid)
>  				port->need_reconfig = 1;
>  				return -1;
>  			}
> -
> -			/*
> -			 * Workaround for rte_eth_dev_configure(),
> max_rx_pkt_len
> -			 * set MTU wrong for the PMDs that have frame
> overhead
> -			 * bigger than RTE_ETHER_HDR_LEN +
> RTE_ETHER_CRC_LEN.
> -			 * For a PMD that has 26 bytes overhead,
> rte_eth_dev_configure()
> -			 * can set MTU to max 1492, not to expected 1500
> bytes.
> -			 * Using rte_eth_dev_set_mtu() to be able to set
> MTU correctly,
> -			 * default MTU value is 1500.
> -			 */
> -			diag = rte_eth_dev_get_mtu(pi, &mtu);
> -			if (diag)
> -				printf("Failed to get MTU for port %d\n", pi);
> -			diag = rte_eth_dev_set_mtu(pi, mtu);
> -			if (diag != 0 && diag != -ENOTSUP)
> -				printf("Failed to set MTU to %u for
> port %d\n",
> -						mtu, pi);
>  		}
>  		if (port->need_reconfig_queues > 0) {
>  			port->need_reconfig_queues = 0;
> --
> 2.26.2



More information about the dev mailing list