Hi Qi, On Wed, 31 May 2017 19:30:26 -0400, Qi Zhang <qi.z.zh...@intel.com> wrote: > Hardware PTYPE in Rx desc will be parsed to fill > mbuf's packet_type. > > Signed-off-by: Ray Kinsella <ray.kinse...@intel.com> > Signed-off-by: Qi Zhang <qi.z.zh...@intel.com> > --- > > v2: > - replace large macro that parse packet type with inline function > - fix couple check patch issues. > > drivers/net/ixgbe/ixgbe_ethdev.c | 8 + > drivers/net/ixgbe/ixgbe_rxtx.c | 623 > ++++++++++++++------------------- > drivers/net/ixgbe/ixgbe_rxtx.h | 92 +++++ > drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c | 65 ++++ > 4 files changed, 434 insertions(+), 354 deletions(-) >
I tried to compile your patch with RTE_MACHINE=default, and I have the following compilation error: gcc -Wp,-MD,./.ixgbe_rxtx_vec_sse.o.d.tmp -m64 -pthread -march=core2 -DRTE_MACHINE_CPUFLAG_SSE -DRTE_MACHINE_CPUFLAG_SSE2 -DRTE_MACHINE_CPUFLAG_SSE3 -DRTE_MACHINE_CPUFLAG_SSSE3 -I/home/user/dpdk.org/build/include -include /home/user/dpdk.org/build/include/rte_config.h -O3 -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wold-style-definition -Wpointer-arith -Wcast-align -Wnested-externs -Wcast-qual -Wformat-nonliteral -Wformat-security -Wundef -Wwrite-strings -Werror -Wno-deprecated -o ixgbe_rxtx_vec_sse.o -c /home/user/dpdk.org/drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c In file included from /usr/lib/gcc/x86_64-linux-gnu/6/include/x86intrin.h:43:0, from /home/user/dpdk.org/build/include/rte_vect.h:70, from /home/user/dpdk.org/build/include/rte_memcpy.h:46, from /home/user/dpdk.org/build/include/rte_ether.h:50, from /home/user/dpdk.org/build/include/rte_ethdev.h:185, from /home/user/dpdk.org/drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c:35: /home/user/dpdk.org/drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c: In function ‘desc_to_ptype_v’: /usr/lib/gcc/x86_64-linux-gnu/6/include/smmintrin.h:447:1: error: inlining failed in call to always_inline ‘_mm_extract_epi32’: target specific option mismatch _mm_extract_epi32 (__m128i __X, const int __N) ^~~~~~~~~~~~~~~~~ /home/user/dpdk.org/drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c:300:13: note: called from here pkt_info = _mm_extract_epi32(ptype0, 3); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/lib/gcc/x86_64-linux-gnu/6/include/x86intrin.h:43:0, from /home/user/dpdk.org/build/include/rte_vect.h:70, from /home/user/dpdk.org/build/include/rte_memcpy.h:46, from /home/user/dpdk.org/build/include/rte_ether.h:50, from /home/user/dpdk.org/build/include/rte_ethdev.h:185, from /home/user/dpdk.org/drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c:35: [...] To reproduce: make config T=x86_64-native-linuxapp-gcc sed -i 's,CONFIG_RTE_MACHINE="native",CONFIG_RTE_MACHINE="default",' build/.config make Do we still want to support the core2 target? Thanks, Olivier