[dpdk-dev] Querying for rte_flow support?
Thomas Monjalon
thomas at monjalon.net
Wed Sep 29 20:52:43 CEST 2021
29/09/2021 19:44, Stephen Hemminger:
> Have a problem with auto-detecting whether device driver supports rte_flow.
>
> Ideally in application would like to be able adapt to handle devices that
> do rte_flow and those that do not. If device does not support rte_flow,
> then configure with RSS across multiple cores; if device does support rte_flow
> then assign traffic to queue based on match (on MAC).
>
> The problem is that there really is not a good API in DPDK for checking.
> Most device drivers will not give the correct return to rte_flow_validate
> unless the device is configured already, and some require device to be started.
> In order to configure, the application has to choose how many queues to use
> and that is the reason it wants to know if rte_flow will work!
>
> The other alternative is looking at DPDK internal data structs to see
> if device supports flow operations. That is not good, and causes more
> issues in later releases.
>
> Looks like rte_flow has a "chicken/egg problem" here.
I think we just need to fix drivers implementation of rte_flow_validate().
We must be able to validate a flow before starting the device.
Which drivers are refusing such check?
That's something we can check with some unit tests.
More information about the dev
mailing list