[EXT] [PATCH] app/crypto-perf: fix socket ID default value
Akhil Goyal
gakhil at marvell.com
Wed Jul 5 20:07:27 CEST 2023
> Due to recent changes to the default device socket ID,
> before being used as an index for session mempool list,
> the socket ID should be set to 0 if unknown (-1).
>
> Fixes: 7dcd73e37965 ("drivers/bus: set device NUMA node to unknown by
> default")
> Cc: olivier.matz at 6wind.com
> Cc: stable at dpdk.org
>
> Signed-off-by: Ciara Power <ciara.power at intel.com>
> ---
> app/test-crypto-perf/main.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/app/test-crypto-perf/main.c b/app/test-crypto-perf/main.c
> index af5bd0d23b..b74e7ba118 100644
> --- a/app/test-crypto-perf/main.c
> +++ b/app/test-crypto-perf/main.c
> @@ -651,6 +651,11 @@ main(int argc, char **argv)
> cdev_id = enabled_cdevs[cdev_index];
>
> uint8_t socket_id = rte_cryptodev_socket_id(cdev_id);
> + /* range check the socket_id, negative values become big
> + * positive ones due to use of unsigned value
> + */
> + if (socket_id >= RTE_MAX_NUMA_NODES)
> + socket_id = 0;
Shouldn't we make this as
int socket_id = rte_cryptodev_socket_id(cdev_id);
if (socket_id == SOCKET_ID_ANY)
socket_id = 0; /* Use the first socket if SOCKET_ID_ANY is returned. */
Since rte_cryptodev_socket_id returns signed value,
the application should not typecast it to unsigned value and then check for max value.
Same comment for the ipsec-secgw patch.
More information about the stable
mailing list