[dpdk-stable] [PATCH] net/failsafe: report valid RSS RETA size
Gaëtan Rivet
grive at u256.net
Wed May 27 23:35:25 CEST 2020
On 27/05/20 18:30 +0300, Andrew Rybchenko wrote:
> On 5/27/20 6:07 PM, Gaëtan Rivet wrote:
> > 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?
>
> Hello Gaetan,
>
> in our case reta_size is required for RSS testing even if there
> is no reta update and query API to estimate where a packet
> should be delivered. It assumes that default reta spreads over
> all Rx queue evenly. I.e. we need reta size and number of Rx
> queues to built default reta.
>
> May be it is really very testing specific, but IMO logical
> anyway.
>
> Andrew.
Alright, given the size of the change there is no reason not to add it
if it can improve consistency.
I think the patch is fine otherwise, I'm just not sure it should be
marked as a bug fix, but backporting won't be hard.
Thanks,
Acked-by: Gaetan Rivet <grive at u256.net>
--
Gaëtan
More information about the stable
mailing list