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

Reply via email to