Re: [dpdk-users] Changes to DPDK kmod drivers / backward compatibility within LTS rel.

2020-10-29 Thread Stephen Hemminger
On Thu, 29 Oct 2020 22:07:38 +0100
Thomas Monjalon  wrote:

> 24/09/2020 19:12, Alexander Kotliarov:
> > Hi there!
> > I would like to find out what is the policy regarding changes to the DPDK's
> > kmod drivers such as igb_uio.ko within a DPDK's LTS release. Are these
> > changes backward compatible?
> > For example, is there a guarantee that an application built
> > against 19.11.5, where igb_uio.ko received changes,would run with this
> > driver built from 19.11.1 version?
> > 
> > Does http://doc.dpdk.org/guides/contributing/stable.html section 8.4 apply
> > to kmod drivers as well?  
> 
> There is no such formal guarantee, but in my opinion,
> it should be the case. Do you imagine a change in kmod
> which could break a DPDK version?

Why do you still need to use igb_uio?
Can you use vfio instead?


Re: [dpdk-users] Changes to DPDK kmod drivers / backward compatibility within LTS rel.

2020-10-29 Thread Thomas Monjalon
24/09/2020 19:12, Alexander Kotliarov:
> Hi there!
> I would like to find out what is the policy regarding changes to the DPDK's
> kmod drivers such as igb_uio.ko within a DPDK's LTS release. Are these
> changes backward compatible?
> For example, is there a guarantee that an application built
> against 19.11.5, where igb_uio.ko received changes,would run with this
> driver built from 19.11.1 version?
> 
> Does http://doc.dpdk.org/guides/contributing/stable.html section 8.4 apply
> to kmod drivers as well?

There is no such formal guarantee, but in my opinion,
it should be the case. Do you imagine a change in kmod
which could break a DPDK version?




Re: [dpdk-users] question related to build issue with Pktgen-DPDK tool

2020-10-29 Thread Wiles, Keith


> On Oct 28, 2020, at 9:33 PM, Sudharshan Krishnakumar 
>  wrote:
> 
> Hi All,
> 
> This is the first time, I am posting to this group, please excuse if there
> are any errors.
> 
> I have a much older version of DPDK(17.08) and corresponding old version of
> PktGen both built using Makefiles,
> working fine on my system.
> 
> Trying to move to latest DPDK(20.08) and PktGen tool.
> Based on what I read, I am guessing it is NOT possible to build latest
> version of Pktgen using make,
> needs to be built using meson/ninja. So I have tried to build both DPDK and
> Pktgen tool using meson/ninja.
> 
> Running into a build issue with latest Pktgen(using meson/ninja)->seeing
> this error->
> meson.build:58:0: ERROR:  Native dependency 'libdpdk' not found.
> 
> I have the 20.08 DPDK built and installed(in a different prefix path, other
> than the default /usr/local):
> 
> DPDK Build/install steps:
> meson build --prefix /home/my_userid/new_dpdk/dpdk-20.08/install
> ninja -C build
> ninja -C build install
> 
> ~/new_dpdk/dpdk-20.08$ find . -name libdpdk.a
> ./x86_64-native-linux-gcc/lib/libdpdk.a
> ./install/lib/x86_64-linux-gnu/libdpdk.a
> 
> ~/new_dpdk/dpdk-20.08$ find . -name *.pc
> ./build/meson-private/libdpdk.pc
> ./build/meson-private/libdpdk-libs.pc
> ./install/lib/x86_64-linux-gnu/pkgconfig/libdpdk.pc
> ./install/lib/x86_64-linux-gnu/pkgconfig/libdpdk-libs.pc
> 
> For building Pktgen-DPDK, I am setting the path PKG_CONFIG_PATH to point to
> the libdpdk.pc file,
> but it still doesn’t find the libdpdk library(not sure why, that is the
> case).
> 
> ~/new_pktgen_dpdk/Pktgen-DPDK$
> export
> PKG_CONFIG_PATH=/home/my_userid/new_dpdk/dpdk-20.08/install/lib/x86_64-linux-gnu/pkgconfig/libdpdk.pc
> 
> When building PktGen seeing this error-> meson.build:58:0: ERROR:  Native
> dependency 'libdpdk' not found.
> 
> Have the build logs below, can you please let me know.
> 
> ~/new_pktgen_dpdk/Pktgen-DPDK$ make
 Use 'make help' for more commands
> 
> ./tools/pktgen-build.sh build
 lua_enabled  : '-Denable_lua=false'
 gui_enabled  : '-Denable_gui=false'
 SDK Directory: '/home/my_userid/new_pktgen_dpdk/Pktgen-DPDK'
 Build Directory  :
> '/home/my_userid/new_pktgen_dpdk/Pktgen-DPDK/Builddir'
 Target Directory : '/home/my_userid/new_pktgen_dpdk/Pktgen-DPDK/usr'
> 
 Ninja build in '/home/my_userid/new_pktgen_dpdk/Pktgen-DPDK/Builddir'
> buildtype='release'
> meson -Dbuildtype=release -Denable_lua=false -Denable_gui=false Builddir
> The Meson build system
> Version: 0.47.1
> Source dir: /home/my_userid/new_pktgen_dpdk/Pktgen-DPDK
> Build dir: /home/my_userid/new_pktgen_dpdk/Pktgen-DPDK/Builddir
> Build type: native build
> Program cat found: YES (/bin/cat)
> Project name: pktgen
> Project version: 20.10.0
> Native C compiler: cc (gcc 7.5.0 "cc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0")
> Build machine cpu family: x86_64
> Build machine cpu: x86_64
> Compiler for C supports arguments -mavx2: YES
> Compiler for C supports arguments -Wno-pedantic -Wpedantic: YES
> Compiler for C supports arguments -Wno-format-truncation
> -Wformat-truncation: YES
> Found pkg-config: /usr/bin/pkg-config (0.29.1)
> 
> meson.build:58:0: ERROR:  Native dependency 'libdpdk' not found

The latest pktgen uses meson/ninja and DPDK must be built and installed, which 
appears to be the case. The ‘find’s you did were only looking in the local 
build directories and not in the DPDK installed location.

The normal installed location of DPDK is here from the ‘pkg-config’ command:

rkwiles@purley (main):.../intel/dpdk$ pkg-config --libs libdpdk
-L/usr/local/lib/x86_64-linux-gnu -Wl,--as-needed -lrte_node -lrte_graph 
-lrte_bpf -lrte_flow_classify -lrte_pipeline -lrte_table -lrte_port -lrte_fib 
-lrte_ipsec -lrte_vhost -lrte_stack -lrte_security -lrte_sched -lrte_reorder 
-lrte_rib -lrte_regexdev -lrte_rawdev -lrte_pdump -lrte_power -lrte_member 
-lrte_lpm -lrte_latencystats -lrte_kni -lrte_jobstats -lrte_ip_frag -lrte_gso 
-lrte_gro -lrte_eventdev -lrte_efd -lrte_distributor -lrte_cryptodev 
-lrte_compressdev -lrte_cfgfile -lrte_bitratestats -lrte_bbdev -lrte_acl 
-lrte_timer -lrte_hash -lrte_metrics -lrte_cmdline -lrte_pci -lrte_ethdev 
-lrte_meter -lrte_net -lrte_mbuf -lrte_mempool -lrte_rcu -lrte_ring -lrte_eal 
-lrte_telemetry -lrte_kvargs -lbsd

Please note the location is /usr/local/lib/x86_64-linux-gnu directory for libs 
and the /usr/local/lib/x86_64-linux-gnu/pkgconfig for the libdpdp.pc file.

The PKG_CONFIG_PATH should be set to /usr/local/lib/x86_64-linux-gnu/pkgconfig 
if needed.

I am using Ubuntu 20.04.1 and I do not have PKG_CONFIG_PATH set. It is possible 
the /etc/ld.so.conf.d/x86_64-linux-gnu.conf contains the 
/usr/local/lib/x86_64-linux-gnu directory as a search path for DPDK libs and 
libdpdk.pc file.

Because you don’t have DPDK installed in the default location, you will need to 
install it in the default location or find the magic path to the libdpdk.pc 
file and set PKG_CONFIG_PATH. Make sure you 

[dpdk-users] Mellanox Unexpected CQE error syndrome

2020-10-29 Thread Krauz, Pavel
Hello,
I am having problem with HPE Ethernet 100Gb 2-port 841QSFP28 Adapter which is a 
Mellanox adapter for 100G network.

The DPDK driver reports and generates lot of error files like 
dpdk_mlx5_port_0_rxq_0_2459159054 and loses traffic (because IMHO it must reset 
the card):

the first line of the error report files is as follows:

Unexpected CQE error syndrome 0x22 CQN = 1030 RQN = 12582977 wqe_counter = 
10040 rq_ci = 494774062 cq_ci = 3586794130
Unexpected CQE error syndrome 0x22 CQN = 1030 RQN = 12582977 wqe_counter = 
27509 rq_ci = 808774458 cq_ci = 1527072213
Unexpected CQE error syndrome 0x0e CQN = 1030 RQN = 12582977 wqe_counter = 0 
rq_ci = 32768 cq_ci = 2413356687
Unexpected CQE error syndrome 0xd4 CQN = 1030 RQN = 12582977 wqe_counter = 0 
rq_ci = 32768 cq_ci = 1527072220
Unexpected CQE error syndrome 0x22 CQN = 1030 RQN = 12582977 wqe_counter = 
60345 rq_ci = 242051992 cq_ci = 1769091515
Unexpected CQE error syndrome 0x22 CQN = 1030 RQN = 12582977 wqe_counter = 1138 
rq_ci = 619349053 cq_ci = 3152294540
Unexpected CQE error syndrome 0xa0 CQN = 1030 RQN = 12582977 wqe_counter = 0 
rq_ci = 32768 cq_ci = 897769578
Unexpected CQE error syndrome 0xf1 CQN = 1030 RQN = 12582977 wqe_counter = 0 
rq_ci = 32768 cq_ci = 1769091529
Unexpected CQE error syndrome 0x75 CQN = 1030 RQN = 12582977 wqe_counter = 0 
rq_ci = 32768 cq_ci = 3152294549
Unexpected CQE error syndrome 0x22 CQN = 1030 RQN = 12582977 wqe_counter = 
64529 rq_ci = 763919355 cq_ci = 2532978162
Unexpected CQE error syndrome 0x22 CQN = 1030 RQN = 12582977 wqe_counter = 5267 
rq_ci = 678728828 cq_ci = 3092052802
Unexpected CQE error syndrome 0x22 CQN = 1030 RQN = 12582977 wqe_counter = 
46035 rq_ci = 3556062128 cq_ci = 2413356673
Unexpected CQE error syndrome 0x73 CQN = 1030 RQN = 12582977 wqe_counter = 0 
rq_ci = 32768 cq_ci = 2532978172
Unexpected CQE error syndrome 0x40 CQN = 1030 RQN = 12582977 wqe_counter = 0 
rq_ci = 32768 cq_ci = 3092052808

I have tried latest card HP firmware and enable/disable CQE compression in the 
mlx5 DPDK driver using rxq_cqe_comp_en=0/1, but no improvement.

Does anybody know what can be the problem and how to mitigate it?

Thanks
Pavel Krauz