[PATCH 5/8] common/sfc_efx/base: support selecting RSS table entry count

Ivan Malov ivan.malov at oktetlabs.ru
Wed Feb 2 13:24:35 CET 2022


Hi,

On Wed, 2 Feb 2022, Ray Kinsella wrote:

>
> Ivan Malov <ivan.malov at oktetlabs.ru> writes:
>
>> On Riverhead boards, the client can control how many entries
>> to have in the indirection table of an exclusive RSS context.
>>
>> Provide the new parameter to clients and indicate its bounds.
>> Extend the API for writing the table to have the flexibility.
>>
>> Signed-off-by: Ivan Malov <ivan.malov at oktetlabs.ru>
>> Reviewed-by: Andrew Rybchenko <andrew.rybchenko at oktetlabs.ru>
>> Reviewed-by: Andy Moreton <amoreton at xilinx.com>
>> ---
>>  drivers/common/sfc_efx/base/ef10_impl.h  |   1 +
>>  drivers/common/sfc_efx/base/ef10_nic.c   |  13 +++
>>  drivers/common/sfc_efx/base/ef10_rx.c    | 136 +++++++++++++++++++++--
>>  drivers/common/sfc_efx/base/efx.h        |  18 +++
>>  drivers/common/sfc_efx/base/efx_impl.h   |   3 +-
>>  drivers/common/sfc_efx/base/efx_mcdi.h   |  11 ++
>>  drivers/common/sfc_efx/base/efx_rx.c     |  38 ++++++-
>>  drivers/common/sfc_efx/base/rhead_impl.h |   1 +
>>  drivers/common/sfc_efx/base/rhead_rx.c   |   4 +-
>>  drivers/common/sfc_efx/version.map       |   1 +
>>  10 files changed, 212 insertions(+), 14 deletions(-)
>>
>>
>> diff --git a/drivers/common/sfc_efx/version.map b/drivers/common/sfc_efx/version.map
>> index 97dd943ec4..9510897b83 100644
>> --- a/drivers/common/sfc_efx/version.map
>> +++ b/drivers/common/sfc_efx/version.map
>> @@ -216,6 +216,7 @@ INTERNAL {
>>  	efx_rx_qpost;
>>  	efx_rx_qpush;
>>  	efx_rx_scale_context_alloc;
>> +	efx_rx_scale_context_alloc_v2;
>>  	efx_rx_scale_context_free;
>>  	efx_rx_scale_default_support_get;
>>  	efx_rx_scale_hash_flags_get;
>
> So this internal, so ordinarly I have little enough to do or say about
> it. In this case, I do have to ask is the _v2 version of the function
> avoidable?

The PMD in question is not the only driver based on libefx. Extending
efx_rx_scale_context_alloc() to add an extra argument would require
that the other libefx-based drivers be updated accordingly. That
is not always reasonable / robust. Hence the v2 method.

Thank you.

--
Ivan M


More information about the dev mailing list