[dpdk-dev] RSS API discussion

Nélio Laranjeiro nelio.laranjeiro at 6wind.com
Fri Oct 16 17:28:10 CEST 2015


On Fri, Oct 16, 2015 at 01:40:00PM +0000, Lu, Wenzhuo wrote:
> Hi Nélio,
>  
> > Hi Wenzhuo,
> > 
> > We should discuss about this API for a future release of DPDK because this one
> > lacks in flexibility.  Some other NICs have indirection tables with a
> > different/configurable size, and the current API does not help to manage it.
> > 
> > For ConnectX-4 I have made a lot of hacks to avoid changing the DPDK API,
> > "[dpdk-dev] [PATCH 0/3] Add RETA configuration to MLX5".
> > http://dpdk.org/ml/archives/dev/2015-October/024681.html
> > 
> > From a user point of view, to update the RETA table, the API expects the user to
> > know the size of it to update or query.  With your patchset, Intel have two
> > indirection table sizes now, with Mellanox ConnectX-4, I fixed to the size of 512
> > entries because it is not fixed by default.
> > 
> > How about discussing this in a separate thread?
> Sure, I changed the tittle.
> But I'm afraid I don't catch up with you. I have 2 questions, 1, Why the reta size cannot be predict on  Mellanox ConnectX-4? 2, I don't understand the meaning when you say the reta size is not fixed by default on Mellanox ConnectX-4.
> Would you like to give more details of the Mellanox ConnectX-4's behavior? It'll be helpful to understand this problem.

On Connexct-4 we can configure the indirection table size with any power
of two up to 512 entries.

The current API only expects RETA tables size to be a multiple of
RTE_RETA_GROUP_SIZE i.e. 64.

To handle any kind of NICs, a simple array of N (RETA table size)
elements with the data, instead of something in multiple of 64 would be
easier to use, something like:

 struct rte_eth_rss_reta_entry {
 	uint16_t idx; /* index to query/update. */
 	uint16_t reta; /* redirection value. */
 };

We should update the API to take an array of such entries plus its size.
It would also make update and query easier.

-- 
Nélio Laranjeiro
6WIND


More information about the dev mailing list