[dpdk-dev] [PATCH] ethdev: fine tune error reporting in pick transfer proxy API

Andrew Rybchenko andrew.rybchenko at oktetlabs.ru
Mon Nov 1 10:41:01 CET 2021


On 10/27/21 12:00 PM, Ivan Malov wrote:
> There are PMDs which do not support flow offloads at all.
> In such cases, the API in question returns ENOTSUP. This
> is too loud. Restructure the code to avoid spamming logs.
> 
> Fixes: 1179f05cc9a0 ("ethdev: query proxy port to manage transfer flows")
> 
> Signed-off-by: Ivan Malov <ivan.malov at oktetlabs.ru>
> ---
>   lib/ethdev/rte_flow.c | 5 +----
>   1 file changed, 1 insertion(+), 4 deletions(-)
> 
> diff --git a/lib/ethdev/rte_flow.c b/lib/ethdev/rte_flow.c
> index d268784532..9d98d2d716 100644
> --- a/lib/ethdev/rte_flow.c
> +++ b/lib/ethdev/rte_flow.c
> @@ -1335,10 +1335,7 @@ rte_flow_pick_transfer_proxy(uint16_t port_id, uint16_t *proxy_port_id,
>   	const struct rte_flow_ops *ops = rte_flow_ops_get(port_id, error);
>   	struct rte_eth_dev *dev;
>   
> -	if (unlikely(ops == NULL))
> -		return -rte_errno;
> -
> -	if (ops->pick_transfer_proxy == NULL) {
> +	if (ops == NULL || ops->pick_transfer_proxy == NULL) {

First of all I think that the patch is wrong and origin code is better.
If flow API is not supported at all (ops == NULL), what's the point
to return some proxy port?

>   		*proxy_port_id = port_id;
>   		return 0;
>   	}
> 

IMHO, spamming of testpmd logs in described case should be fixed
in testpmd itself to avoid logs in the case of ENOTSUP. That's it.


More information about the dev mailing list