Hello,

On Tue, Jul 9, 2024 at 11:24 AM David Marchand
<david.march...@redhat.com> wrote:
>
> On Mon, Jun 10, 2024 at 3:40 PM Konstantin Ananyev
> <konstantin.anan...@huawei.com> wrote:
> > > When the rte_memcpy() size is 16, the same 16 bytes are copied twice.
> > > In the case where the size is known to be 16 at build time, omit the
> > > duplicate copy.
> > >
> > > Reduced the amount of effectively copy-pasted code by using #ifdef
> > > inside functions instead of outside functions.
> > >
> > > Suggested-by: Stephen Hemminger <step...@networkplumber.org>
> > > Signed-off-by: Morten Brørup <m...@smartsharesystems.com>
> > > Acked-by: Bruce Richardson <bruce.richard...@intel.com>
> > Acked-by: Konstantin Ananyev <konstantin.anan...@huawei.com>
>
> Applied, thanks for the cleanup.

This breaks OVS compilation (clang and gcc).

make[1]: *** [Makefile:4722: lib/ofp-packet.lo] Error 1
make[1]: *** Waiting for unfinished jobs....
In file included from lib/ofp-print.c:34:
In file included from ./lib/dp-packet.h:25:
In file included from /home/runner/work/ovs/ovs/dpdk-dir/include/rte_mbuf.h:38:
In file included from
/home/runner/work/ovs/ovs/dpdk-dir/include/rte_mempool.h:50:
/home/runner/work/ovs/ovs/dpdk-dir/include/rte_memcpy.h:113:25: error:
cast from 'const uint8_t *' (aka 'const unsigned char *') to 'const
__m128i *' increases required alignment from 1 to 16
[-Werror,-Wcast-align]
xmm0 = _mm_loadu_si128((const __m128i *)src);
^~~~~~~~~~~~~~~~~~~~
/home/runner/work/ovs/ovs/dpdk-dir/include/rte_memcpy.h:114:19: error:
cast from 'uint8_t *' (aka 'unsigned char *') to '__m128i *' increases
required alignment from 1 to 16 [-Werror,-Wcast-align]
_mm_storeu_si128((__m128i *)dst, xmm0);
^~~~~~~~~~~~~~
2 errors generated.
make[1]: *** [Makefile:4722: lib/ofp-print.lo] Error 1
make[1]: Leaving directory '/home/runner/work/ovs/ovs'
make: *** [Makefile:3102: all] Error 2

I dropped this patch from main for now.
Can you have a look please?


-- 
David Marchand

Reply via email to