On Thu, 28 May 2026 at 10:47, Thomas Monjalon <[email protected]> wrote:
>
> Seen in OBS on i586 Debian:
>
> from ../drivers/net/sxe2/sxe2_txrx_vec_sse.c:5:
>         In function ‘_mm_loadu_si128’,
>                 inlined from ‘rte_memcpy’
>                 inlined from ‘sxe2_rx_pkts_refactor’
>                         at ../drivers/net/sxe2/sxe2_txrx_vec_common.h:233:2:
>         /usr/lib/gcc/i686-linux-gnu/12/include/emmintrin.h:703:10: error:
>         array subscript 8 is outside array bounds of ‘struct rte_mbuf *[32]’
>
> The important options to reproduce are "-m32 -O2 -march=corei7".
>
> In 32-bit build the pointer array done_pkts[32] is smaller:
>         32 * 4 = 128 bytes
> so an SSE access  would be outside the bound.
>
> The libc memcpy does not trigger such warning
> and is a good choice to copy an array of pointers.
>
> Signed-off-by: Thomas Monjalon <[email protected]>

I reproduced and checked Debian 13 32 bits build with OBS.
Tested-by: David Marchand <[email protected]>


-- 
David Marchand

Reply via email to