Hi Qi,
On Wed, 31 May 2017 19:30:26 -0400, Qi Zhang <[email protected]> wrote:
> Hardware PTYPE in Rx desc will be parsed to fill
> mbuf's packet_type.
>
> Signed-off-by: Ray Kinsella <[email protected]>
> Signed-off-by: Qi Zhang <[email protected]>
> ---
>
> 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