[dpdk-dev] [PATCH] net/failsafe: report valid RSS RETA size

Gaëtan Rivet grive at u256.net
Wed May 27 17:07:11 CEST 2020


On 27/05/20 15:34 +0100, Andrew Rybchenko wrote:
> From: Ian Dolzhansky <ian.dolzhansky at oktetlabs.ru>
> 
> Failsafe driver has been indicating zero for RSS redirection table size
> after device info reporting had been reworked. Report proper value.
> 
> Fixes: 4586be3743d4 ("net/failsafe: fix reported device info")
> Cc: Stephen Hemminger <sthemmin at microsoft.com>
> Cc: stable at dpdk.org
> 
> Signed-off-by: Ian Dolzhansky <ian.dolzhansky at oktetlabs.ru>
> Signed-off-by: Andrew Rybchenko <arybchenko at solarflare.com>
> ---
>  drivers/net/failsafe/failsafe_ops.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/drivers/net/failsafe/failsafe_ops.c b/drivers/net/failsafe/failsafe_ops.c
> index e046cfe6aa..45da9378c3 100644
> --- a/drivers/net/failsafe/failsafe_ops.c
> +++ b/drivers/net/failsafe/failsafe_ops.c
> @@ -1068,6 +1068,13 @@ fs_dev_merge_info(struct rte_eth_dev_info *info,
>  	info->rx_queue_offload_capa &= sinfo->rx_queue_offload_capa;
>  	info->tx_queue_offload_capa &= sinfo->tx_queue_offload_capa;
>  	info->flow_type_rss_offloads &= sinfo->flow_type_rss_offloads;
> +
> +	/*
> +	 * RETA size is a GCD of RETA sizes indicated by sub-devices.
> +	 * Each of these sizes is a power of 2, so use the lower one.
> +	 */
> +	info->reta_size = RTE_MIN(info->reta_size, sinfo->reta_size);
> +
>  	info->hash_key_size = RTE_MIN(info->hash_key_size,
>  				      sinfo->hash_key_size);
>  
> @@ -1128,6 +1135,7 @@ fs_dev_infos_get(struct rte_eth_dev *dev,
>  	infos->max_hash_mac_addrs = UINT32_MAX;
>  	infos->max_vfs = UINT16_MAX;
>  	infos->max_vmdq_pools = UINT16_MAX;
> +	infos->reta_size = UINT16_MAX;
>  	infos->hash_key_size = UINT8_MAX;
>  
>  	/*
> -- 
> 2.17.1
> 

Hello Andrew, Ian,

The reta_size info is linked to being able to update the RSS RETA.

I don't think it is a bug for the moment to report 0, as long as
failsafe does not support RETA update. Now, the reta_update ops could be
quickly implemented in failsafe, but that should be a new feature.

Did you hit an issue with it?

Regards,
-- 
Gaëtan


More information about the dev mailing list