> -----Original Message----- > From: dev <ovs-dev-boun...@openvswitch.org> On Behalf Of Timothy Redaelli > Sent: Thursday, April 29, 2021 2:52 PM > To: Amber, Kumar <kumar.am...@intel.com> > Cc: d...@openvswitch.org; i.maxim...@ovn.org > Subject: Re: [ovs-dev] [v2 v2 4/6] dpif-netdev: add avx512 miniflow extract > for > traffic ip/udp > > On Wed, 28 Apr 2021 14:49:29 +0530 > Kumar Amber <kumar.am...@intel.com> wrote: > > > This patch introduces avx512 optimized function > > pointer for IP/UDP traffic type and supporting > > functions in dpif-netdev-extract-avx512. > > > > Signed-off-by: Harry van Haaren <harry.van.haa...@intel.com> > > Co-authored-by: Kumar Amber <kumar.am...@intel.com> > > Signed-off-by: Kumar Amber <kumar.am...@intel.com> > > --- > > lib/automake.mk | 1 + > > lib/dpdk.c | 1 + > > lib/dpif-netdev-extract-avx512.c | 218 ++++++++++++++++++++++++++++++ > > lib/dpif-netdev-private-extract.c | 5 + > > lib/dpif-netdev-private-extract.h | 11 ++ > > 5 files changed, 236 insertions(+) > > create mode 100644 lib/dpif-netdev-extract-avx512.c > > > > Hi, > unlucky this patch breaks compilation on non-x86 arches: > > libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I ../include -I ./include -I > ../lib -I ./lib > -Wstrict-prototypes -Wall -Wextra -Wno-sign-compare -Wpointer-arith -Wformat - > Wformat-security -Wswitch-enum -Wunused-parameter -Wbad-function-cast - > Wcast-align -Wstrict-prototypes -Wold-style-definition -Wmissing-prototypes - > Wmissing-field-initializers -fno-strict-aliasing -Wswitch-bool -Wlogical-not- > parentheses -Wsizeof-array-argument -Wbool-compare -Wshift-negative-value - > Wduplicated-cond -Wshadow -Wmultistatement-macros -Wcast-align=strict -O2 -g - > pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,- > D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc- > switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 - > specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=z13 -mtune=z14 - > fasynchronous-unwind-tables -fstack-clash-protection -c > ../lib/dpif-netdev-extract- > avx512.c -fPIC -DPIC -o lib/.libs/dpif-netdev-extract-avx512.o > ../lib/dpif-netdev-extract-avx512.c:18:10: fatal error: immintrin.h: No such > file or > directory > #include <immintrin.h> > ^~~~~~~~~~~~~ > compilation terminated. > make[2]: *** [Makefile:4562: lib/dpif-netdev-extract-avx512.lo] Error 1 > make[2]: *** Waiting for unfinished jobs.... > > You should, probably, keep all the file content inside an #ifdef > __x86_64__, and probably also inside an #if !defined(__CHECKER__), like > dpif-netdev-lookup-avx512-gather.c and dpif-netdev-avx512.c.
Hi Timothy, Apologies for response in delay - just saw your review on the patchwork: https://patchwork.ozlabs.org/project/openvswitch/patch/20210428091931.2090062-5-kumar.am...@intel.com/ You're absolutely right that the code here wasn't portable to other Archs, this was a known limitation of the v2, and is fixed in the V3 which we intend to send to the mailing list in the next days. Thanks for review & input, -Harry _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev