On 14/09/2021 08:10, David Marchand wrote:
> On Fri, Sep 10, 2021 at 6:54 PM Pablo de Lara
> <pablo.de.lara.gua...@intel.com> wrote:
>>
>> rte_efd_create() function was using uint8_t for a socket bitmask,
>> for one of its parameters.
>> This limits the maximum of NUMA sockets to be 8.
>> Changing to to uint64_t increases it to 64, which should be
>> more future-proof.
>
> Cc: ppc maintainer, since I think powerX servers have non contiguous
> NUMA sockets.
>
>
>>
>> Coverity issue: 366390
>> Fixes: 56b6ef874f8 ("efd: new Elastic Flow Distributor library")
>>
>> Signed-off-by: Pablo de Lara <pablo.de.lara.gua...@intel.com>
>> ---
>>
>> This fix requires an API breakage and therefore it is not
>> a good candidate for backporting (besides, it is a very low impact bug).
>> Hence, I am not CC'ing stable.
>
> This is an unannounced breakage for a stable API.
> Cc: techboard + Ray for awareness.
Understood.
Its low impact, at a time we are changing the ABI in any case.
>
>
>>
>> ---
>>
>> lib/efd/rte_efd.c | 2 +-
>> lib/efd/rte_efd.h | 2 +-
>> 2 files changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/lib/efd/rte_efd.c b/lib/efd/rte_efd.c
>> index 77f46809f8..68a2378e88 100644
>> --- a/lib/efd/rte_efd.c
>> +++ b/lib/efd/rte_efd.c
>> @@ -495,7 +495,7 @@ efd_search_hash(struct rte_efd_table * const table,
>>
>> struct rte_efd_table *
>> rte_efd_create(const char *name, uint32_t max_num_rules, uint32_t key_len,
>> - uint8_t online_cpu_socket_bitmask, uint8_t
>> offline_cpu_socket)
>> + uint64_t online_cpu_socket_bitmask, uint8_t
>> offline_cpu_socket)
>> {
>> struct rte_efd_table *table = NULL;
>> uint8_t *key_array = NULL;
>> diff --git a/lib/efd/rte_efd.h b/lib/efd/rte_efd.h
>> index c2be4c09ae..d3d7befd0c 100644
>> --- a/lib/efd/rte_efd.h
>> +++ b/lib/efd/rte_efd.h
>> @@ -139,7 +139,7 @@ typedef uint16_t efd_hashfunc_t;
>> */
>> struct rte_efd_table *
>> rte_efd_create(const char *name, uint32_t max_num_rules, uint32_t key_len,
>> - uint8_t online_cpu_socket_bitmask, uint8_t offline_cpu_socket);
>> + uint64_t online_cpu_socket_bitmask, uint8_t offline_cpu_socket);
>>
>> /**
>> * Releases the resources from an EFD table
>> --
>> 2.25.1
>>
>
>