On Wed, 27 May 2020 23:35:25 +0200 Gaëtan Rivet <gr...@u256.net> wrote:
> 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.dolzhan...@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 <sthem...@microsoft.com> > > >> Cc: sta...@dpdk.org > > >> > > >> Signed-off-by: Ian Dolzhansky <ian.dolzhan...@oktetlabs.ru> > > >> Signed-off-by: Andrew Rybchenko <arybche...@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 <gr...@u256.net> > Agreed, looks good to me, but probably doesn't matter much. Almost all hardware only supports one reta_size anyway. Acked-by: Stephen Hemminger <step...@networkplumber.org>