On Fri, 29 May 2026 22:45:00 +0200 Morten Brørup <[email protected]> wrote:
> If you are curious too... > Does the compiler still get confused about AVX rte_memcpy (without this > patch), if applying the rte_memcpy patch? > https://patchwork.dpdk.org/project/dpdk/patch/[email protected]/ No still fails. This is if __rte_always_inline is defined as just inline as an experiment. Compiler gets confused in virtio_net because of matching conditions doing initialization in virtio_net. Also, has issue with rte_memcpy. ninja: Entering directory `build' [2352/3763] Compiling C object lib/librte_vhost.a.p/vhost_virtio_net.c.o ../lib/vhost/virtio_net.c: In function ‘desc_to_mbuf’: ../lib/vhost/virtio_net.c:3025:34: warning: ‘pkts_info’ may be used uninitialized [-Wmaybe-uninitialized] 3025 | pkts_info[slot_idx].nethdr = *hdr; | ^ ../lib/vhost/virtio_net.c:2915:37: note: ‘pkts_info’ was declared here 2915 | struct async_inflight_info *pkts_info; | ^~~~~~~~~ [3487/3763] Compiling C object app/dpdk-test.p/test_test_ipsec.c.o In file included from /usr/lib/gcc/x86_64-linux-gnu/15/include/immintrin.h:43, from ../lib/eal/x86/include/rte_rtm.h:8, from ../lib/eal/x86/include/rte_spinlock.h:9, from ../lib/mempool/rte_mempool.h:44, from ../lib/mbuf/rte_mbuf.h:39, from ../app/test/test_ipsec.c:11: In function ‘_mm256_loadu_si256’, inlined from ‘rte_mov32’ at ../lib/eal/x86/include/rte_memcpy.h:119:9, inlined from ‘rte_mov64’ at ../lib/eal/x86/include/rte_memcpy.h:158:2, inlined from ‘rte_mov128’ at ../lib/eal/x86/include/rte_memcpy.h:170:2, inlined from ‘rte_memcpy_generic_more_than_64’ at ../lib/eal/x86/include/rte_memcpy.h:389:4, inlined from ‘rte_memcpy’ at ../lib/eal/x86/include/rte_memcpy.h:715:10, inlined from ‘setup_test_string_tunneled.constprop’ at ../app/test/test_ipsec.c:615:3: /usr/lib/gcc/x86_64-linux-gnu/15/include/avxintrin.h:873:10: warning: array subscript ‘__m256i_u[3]’ is partly outside array bounds of ‘const char[108]’ [-Warray-bounds=] 873 | return *__P; | ^~~~ ../app/test/test_ipsec.c: In function ‘setup_test_string_tunneled.constprop’: ../app/test/test_ipsec.c:527:12: note: at offset 96 into object ‘null_plain_data’ of size 108 527 | const char null_plain_data[] = | ^~~~~~~~~~~~~~~ [3763/3763] Linking target app/dpdk-test

