Thursday, May 10, 2018 1:09 AM, Ferruh Yigit:
> Subject: [PATCH] app/testpmd: check if CRC strip offload supported
> 
> Testpmd set CRC_STRIP offload blindly, this is wrong according offload API
> definition, and will cause error for the PMDs that doesn't support CRC_STRIP
> like virtual PMDs.
> 
> Check if underlying device report this capability and don't set it if not
> supported.
> 
> Fixes: 0074d02fca21 ("app/testpmd: convert to new Rx offloads API")
> Cc: shah...@mellanox.com
> 
> Signed-off-by: Ferruh Yigit <ferruh.yi...@intel.com>

Yes this is the correct behavior. I hope all the PMDs report the CRC strip 
correctly. 

Acked-by: Shahaf Shuler < shah...@mellanox.com>

> ---
> Cc: Wei Dai <wei....@intel.com>
> Cc: Qi Zhang <qi.z.zh...@intel.com>
> ---
>  app/test-pmd/testpmd.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index
> db23f23e5..1938283f6 100644
> --- a/app/test-pmd/testpmd.c
> +++ b/app/test-pmd/testpmd.c
> @@ -701,6 +701,11 @@ init_config(void)
>               port->dev_conf.txmode = tx_mode;
>               port->dev_conf.rxmode = rx_mode;
>               rte_eth_dev_info_get(pid, &port->dev_info);
> +
> +             if (!(port->dev_info.rx_offload_capa &
> +                                     DEV_RX_OFFLOAD_CRC_STRIP))
> +                     port->dev_conf.rxmode.offloads &=
> +                             ~DEV_RX_OFFLOAD_CRC_STRIP;
>               if (!(port->dev_info.tx_offload_capa &
>                     DEV_TX_OFFLOAD_MBUF_FAST_FREE))
>                       port->dev_conf.txmode.offloads &=
> --
> 2.14.3

Reply via email to