[dpdk-dev] [PATCH v3 02/10] app/testpmd: convert to new Ethdev Rx offloads API

Shahaf Shuler shahafs at mellanox.com
Sat Jan 20 20:29:27 CET 2018


Hi Harish, 


Friday, January 19, 2018 9:30 PM, Patil, Harish:
> >
> 
> Hi Shahaf,
> This testpmd change is causing some issues for qede PMD.
> In this patch, rte_eth_dev_configure() and RX/TX queue setup functions are
> called for the second time after applying TX offloads but without calling
> rte_eth_dev_close() before.

This issue is not related to the patch, rather to how DPDK and ethdev layer is defined.
In DPDK, after device probe the device is considered usable from ethdev. Then from ethdev the device can be configured (both port and queues) as long as it is not started yet.
The move between device start, stop, port config and queue config can happen multiple times without the need to move through device close.
In fact, the only way to make the device usable again after close is by another probe. 

> Also there is no way in the driver to detect that this is a port
> reconfiguration condition in which case it needs to do certain resources
> deallocation/cleanup based on prior configuration.

Am not sure I understand. 
You mean it is impossible from your side to detect port configuration in your PMD? Other PMDs do that.

> Ideally, we don’t want to maintain port states in driver internally. So is
> there any suggestions here?

Generally, I think this is a big issue in qede PMD. It is not following the rules of ethdev. 
I guess that with this misfunctionality you will have bugs also with real applications.  

As a temporary walk around you can configure the Tx offload you want through --tx-offloads command line parameter and avoid enablement using the CLI.
This way the port and queues will be reconfigured only once. 

> 
> Thanks,
> Harish
> 
> 
> 
> 
> >



More information about the dev mailing list