DPDK usage discussions
 help / color / mirror / Atom feed
From: "Benoit Ganne (bganne)" <bganne@cisco.com>
To: "users@dpdk.org" <users@dpdk.org>
Cc: "matan@mellanox.com" <matan@mellanox.com>,
	"shahafs@mellanox.com" <shahafs@mellanox.com>,
	"viacheslavo@mellanox.com" <viacheslavo@mellanox.com>
Subject: Re: [dpdk-users] mlx5 pmd + rdma-core 28 init failure
Date: Thu, 2 Apr 2020 15:50:22 +0000	[thread overview]
Message-ID: <CH2PR11MB4327291D560397DE9E56023AC1C60@CH2PR11MB4327.namprd11.prod.outlook.com> (raw)
In-Reply-To: <CH2PR11MB4327D2D05A8F139444F4BC4AC1C90@CH2PR11MB4327.namprd11.prod.outlook.com>

Adding MLX5 PMD maintainers.

I also checked with latest rdma-core master and latest DPDK master and it is failing with the same issue.
Any recommendation?

Best
ben

> -----Original Message-----
> From: Benoit Ganne (bganne)
> Sent: mercredi 1 avril 2020 18:52
> To: users@dpdk.org
> Subject: mlx5 pmd + rdma-core 28 init failure
> 
> Hi all,
> 
> I have troubles making DPDK v20.02 MLX5 PMD working with rdma-core v28.0:
> it looks like the flow initialization done while initializing the device
> fails in rdma-core providers/mlx5/dr_table.c:mlx5dv_dr_table_create()
> because of unsupported parameters.
> The issue is the following test in rdma-core
> providers/mlx5/dr_table.c:mlx5dv_dr_table_create():
>     if (level && !dmn->info.supp_sw_steering) {
>         errno = EOPNOTSUPP;
>         goto dec_ref;
>     }
> Where level == 65534 and dmn->info.supp_sw_steering == false, hence the
> test is true and the function returns EOPNOTSUPP.
> 
> Is this expected? It does work fine with ibv instead of dv API. Any help
> appreciated.
> 
> Here is what I do:
>    1) checkout & compile rdma-core v28.0
> ~# git clone https://github.com/linux-rdma/rdma-core
> ~# cd rdma-core
> ~# git checkout v28.0
> ~# mkdir build
> ~# cd build
> ~# CFLAGS=-fPIC cmake -DIN_PLACE=1 -DENABLE_STATIC=1 -GNinja ..
> ~# ninja
> 
>    2) checkout & compile dpdk v20.02
> ~# git clone git://dpdk.org/dpdk
> ~# cd dpdk
> ~# make config T=x86_64-native-linuxapp-gcc
> ~# sed -ri 's,(MLX5_PMD=).*,\1y,' build/.config
> ~# sed -ri 's,(IBVERBS_LINK_STATIC_PMD=).*,\1y,' build/.config
> ~# make EXTRA_CFLAGS=-I/home/bganne/src/rdma-core/build/include
> EXTRA_LDFLAGS=-L/home/bganne/src/rdma-core/build/lib
> PKG_CONFIG_PATH=/home/bganne/src/rdma-core/build/lib/pkgconfig
> ~# sudo gdb --args ./build/app/testpmd -w 0000:5e:00.0 -w 0000:5e:00.1 -l
> 4,11,35 -- -a --forward-mode=rxonly -i
> 
> The backtrace looks like this:
> #0  mlx5dv_dr_table_create (dmn=0x555556c641b0, level=65534) at
> ../providers/mlx5/dr_table.c:183
> #1  0x0000555555dfaeaa in flow_dv_tbl_resource_get (dev=<optimized out>,
> table_id=65534, egress=<optimized out>, transfer=<optimized out>,
> error=0x7fffffffdca0) at
> /home/bganne/src/dpdk/drivers/net/mlx5/mlx5_flow_dv.c:6746
> #2  0x0000555555e02b28 in __flow_dv_translate
> (dev=dev@entry=0x555556bbcdc0 <rte_eth_devices>, dev_flow=0x100388300,
> attr=<optimized out>, items=<optimized out>, actions=<optimized out>,
> error=<optimized out>) at
> /home/bganne/src/dpdk/drivers/net/mlx5/mlx5_flow_dv.c:7503
> #3  0x0000555555e04954 in flow_dv_translate (dev=0x555556bbcdc0
> <rte_eth_devices>, dev_flow=<optimized out>, attr=<optimized out>,
> items=<optimized out>, actions=<optimized out>, error=<optimized out>) at
> /home/bganne/src/dpdk/drivers/net/mlx5/mlx5_flow_dv.c:8841
> #4  0x0000555555df152f in flow_drv_translate (error=0x7fffffffdca0,
> actions=0x7fffffffdce0, items=0x7fffffffdcc0, attr=0x7fffffffbb88,
> dev_flow=<optimized out>, dev=0x555556bbcdc0 <rte_eth_devices>) at
> /home/bganne/src/dpdk/drivers/net/mlx5/mlx5_flow.c:2571
> #5  flow_create_split_inner (error=0x7fffffffdca0, external=false,
> actions=0x7fffffffdce0, items=0x7fffffffdcc0, attr=0x7fffffffbb88,
> prefix_layers=0, sub_flow=0x0, flow=0x1003885c0, dev=0x555556bbcdc0
> <rte_eth_devices>) at
> /home/bganne/src/dpdk/drivers/net/mlx5/mlx5_flow.c:3490
> #6  flow_create_split_metadata (error=0x7fffffffdca0, external=false,
> actions=0x7fffffffdce0, items=0x7fffffffdcc0, attr=0x7fffffffbb88,
> prefix_layers=0, flow=0x1003885c0, dev=0x555556bbcdc0 <rte_eth_devices>)
> at /home/bganne/src/dpdk/drivers/net/mlx5/mlx5_flow.c:3865
> #7  flow_create_split_meter (error=0x7fffffffdca0, external=false,
> actions=0x7fffffffdce0, items=<optimized out>, attr=0x7fffffffdc94,
> flow=0x1003885c0, dev=0x555556bbcdc0 <rte_eth_devices>) at
> /home/bganne/src/dpdk/drivers/net/mlx5/mlx5_flow.c:4121
> #8  flow_create_split_outer (error=0x7fffffffdca0, external=false,
> actions=0x7fffffffdce0, items=<optimized out>, attr=0x7fffffffdc94,
> flow=0x1003885c0, dev=0x555556bbcdc0 <rte_eth_devices>) at
> /home/bganne/src/dpdk/drivers/net/mlx5/mlx5_flow.c:4178
> #9  flow_list_create (dev=dev@entry=0x555556bbcdc0 <rte_eth_devices>,
> list=list@entry=0x0, attr=attr@entry=0x7fffffffdc94,
> items=items@entry=0x7fffffffdcc0, actions=actions@entry=0x7fffffffdce0,
> external=external@entry=false, error=0x7fffffffdca0) at
> /home/bganne/src/dpdk/drivers/net/mlx5/mlx5_flow.c:4306
> #10 0x0000555555df8587 in mlx5_flow_discover_mreg_c
> (dev=dev@entry=0x555556bbcdc0 <rte_eth_devices>) at
> /home/bganne/src/dpdk/drivers/net/mlx5/mlx5_flow.c:5747
> #11 0x0000555555d692a6 in mlx5_dev_spawn (config=..., spawn=0x1003e9e00,
> dpdk_dev=0x555556dd6fe0) at
> /home/bganne/src/dpdk/drivers/net/mlx5/mlx5.c:2763
> #12 mlx5_pci_probe (pci_drv=<optimized out>, pci_dev=<optimized out>) at
> /home/bganne/src/dpdk/drivers/net/mlx5/mlx5.c:3363
> #13 0x0000555555a411c8 in pci_probe_all_drivers ()
> #14 0x0000555555a412f8 in rte_pci_probe ()
> #15 0x0000555555a083da in rte_bus_probe ()
> #16 0x00005555559f204d in rte_eal_init ()
> #17 0x00005555556a0d45 in main ()
> 
> Best
> ben

  reply	other threads:[~2020-04-02 15:50 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-01 16:51 Benoit Ganne (bganne)
2020-04-02 15:50 ` Benoit Ganne (bganne) [this message]
2020-04-02 16:18   ` Matan Azrad
2020-04-02 17:03     ` Benoit Ganne (bganne)
2020-04-05 11:01       ` Matan Azrad
2020-04-06  9:14         ` Benoit Ganne (bganne)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CH2PR11MB4327291D560397DE9E56023AC1C60@CH2PR11MB4327.namprd11.prod.outlook.com \
    --to=bganne@cisco.com \
    --cc=matan@mellanox.com \
    --cc=shahafs@mellanox.com \
    --cc=users@dpdk.org \
    --cc=viacheslavo@mellanox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).