[dpdk-dev] [EXT] [PATCH] test/crypto: fix gcc 11 array-bounds error

Akhil Goyal gakhil at marvell.com
Mon May 17 21:24:24 CEST 2021


> $ gcc --version
> gcc (GCC) 11.1.1 20210428 (Red Hat 11.1.1-1)
> 
> /test_cryptodev.c.o -c ../app/test/test_cryptodev.c
> ../app/test/test_cryptodev.c: In function ‘test_multi_session’:
> ../app/test/test_cryptodev.c:10447:9:
> error: array subscript ‘struct rte_cryptodev_sym_session *[4]’
> is partly outside array bounds of ‘unsigned char[33]’
> [-Werror=array-bounds]
> 10447 |   rte_cryptodev_sym_session_init(ts_params->valid_devs[0],
>       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 10448 |     sessions[i], &ut_params->auth_xform,
>       |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 10449 |     ts_params->session_priv_mpool);
>       |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ../app/test/test_cryptodev.c:10399:20:
> note: referencing an object of size 33 allocated by ‘rte_malloc’
> 10399 |  sessions = rte_malloc(NULL,
>       |             ^~~~~~~~~~~~~~~~
> 10400 |             (sizeof(struct rte_cryptodev_sym_session *) *
>       |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 10401 |             MAX_NB_SESSIONS) + 1, 0);
>       |             ~~~~~~~~~~~~~~~~~~~~~~~~
> 
> Fix the allocation for sessions, to prevent an array-bounds
> warning with gcc 11. Set the not created session to NULL.
> 
> Fixes: 202d375c60bc ("app/test: add cryptodev unit and performance tests")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Kevin Traynor <ktraynor at redhat.com>
Acked-by: Akhil Goyal <gakhil at marvell.com>

Applied to dpdk-next-crypto


More information about the dev mailing list