DPDK usage discussions
 help / color / mirror / Atom feed
From: Raslan Darawsheh <rasland@nvidia.com>
To: Gerry Wan <gerryw@stanford.edu>
Cc: "users@dpdk.org" <users@dpdk.org>
Subject: Re: [dpdk-users] Enable MLX5 driver v20.11
Date: Mon, 14 Dec 2020 08:27:02 +0000
Message-ID: <DM6PR12MB27484F462D549EA4A35B3332CFC70@DM6PR12MB2748.namprd12.prod.outlook.com> (raw)
In-Reply-To: <CAAcwi39UnXi67Lc3E8qy+a8HURH6ncWt5O6zEeUfU3a54FuKwA@mail.gmail.com>

So here is how we link against shared libs:

meson build-meson -D disable_drivers=net/mlx4  --default-library=shared && ninja -C build-meson
and when you want to run an application like testpmd for example:

./dpdk-testpmd -n 4 -a 0000:08:00.0  -d $PATH_TO_BUILD/build-meson/drivers/librte_mempool_ring.so -d $PATH_TO_BUILD/build-meson/drivers/librte_net_mlx5.so -d $PATH_TO_BUILD/build-meson/drivers/librte_common_mlx5.so -d $PATH_TO_BUILD/build-meson/drivers/librte_regex_mlx5.so -d $PATH_TO_BUILD/build-meson/drivers/librte_vdpa_mlx5.so -- -i

Let me know if it works for you

Kindest regards,
Raslan Darawsheh

From: Gerry Wan <gerryw@stanford.edu>
Sent: Monday, December 14, 2020 7:33 AM
To: Raslan Darawsheh <rasland@nvidia.com>
Cc: users@dpdk.org
Subject: Re: [dpdk-users] Enable MLX5 driver v20.11

I've found that linking with static libraries will fix this problem, but using shared libraries continues to successfully build but at runtime will not find any ports despite having devices bound to DPDK compatible drivers. Perhaps I am linking against library executables from the old DPDK version? If this is likely the case, how can I fix this to work with shared libraries?

On Sun, Dec 13, 2020 at 1:04 PM Gerry Wan <gerryw@stanford.edu<mailto:gerryw@stanford.edu>> wrote:
OK, I was able to build it this way.
However, it seems that it still does not solve my problem where the application detects no ports available. I am building it outside the development kit using Make. It appears the same issue happens with the provided sample applications. If I compile the "skeleton" sample application with make, running it will error saying no ports available. If I compile it using meson (meson configure -Dexamples=skeleton) and then run it through ./<build_dir>/examples/dpdk-skeleton it works fine. How can I compile the applications outside of the development kit? The current documentation says this should still be possible using make as before.

On Sun, Dec 13, 2020 at 3:31 AM Raslan Darawsheh <rasland@nvidia.com<mailto:rasland@nvidia.com>> wrote:
Starting OFED 5.1 it stopped the support for MLX4 pmd
And seems that you have some libmlx4 under your local lib dir,
In the meanwhile what you can do when doing ninja is to disable mxl4 compilation:

meson build -D disable_driver=net/mlx4; ninja -C build

Kindest regards,
Raslan Darawsheh

From: Gerry Wan <gerryw@stanford.edu<mailto:gerryw@stanford.edu>>
Sent: Sunday, December 13, 2020 1:25 PM
To: Raslan Darawsheh <rasland@nvidia.com<mailto:rasland@nvidia.com>>
Cc: users@dpdk.org<mailto:users@dpdk.org>
Subject: Re: [dpdk-users] Enable MLX5 driver v20.11

I updated my MLNX_OFED to 5.1-, which was tested against for this DPDK release.
To install, I ran ./mlnxofedinstall --dpdk --upstream-libs --with-mft --with-kernel-mft
then /etc/init.d/openibd restart
Now, ninja install gives me ../drivers/net/mlx4/mlx4_glue.h:16:10: fatal error: infiniband/mlx4dv.h: No such file or directory

What other steps am I missing?

On Sun, Dec 13, 2020 at 12:35 AM Raslan Darawsheh <rasland@nvidia.com<mailto:rasland@nvidia.com>> wrote:
Hi Gerry,

Starting V20.11 the build system was switched to use meson only,
And if you have necessary packages for MLX5 (a.k. rdma-core) it will be built automatically.

As for your question if you still don't need to bind mlx5 driver that's true, its still valid.

Kindest regards,
Raslan Darawsheh

> -----Original Message-----
> From: users <users-bounces@dpdk.org<mailto:users-bounces@dpdk.org>> On Behalf Of Gerry Wan
> Sent: Sunday, December 13, 2020 1:22 AM
> To: users@dpdk.org<mailto:users@dpdk.org>
> Subject: [dpdk-users] Enable MLX5 driver v20.11
> Hello,
> I am trying to update my DPDK version from 20.08 to 20.11. I am using the
> mlx5 driver, and previously to enable it I had to set
> CONFIG_RTE_LIBRTE_MLX5_PMD=y in config/common_base. In 20.11, I see
> no
> option to do so. I was able to build my application (and the sample
> applications), but running rte_eth_dev_count_avail() returns 0 and cannot
> find any ports.
> The steps I did to build DPDK from source were:
> $ meson build
> $ cd build
> $ sudo ninja install
> $ sudo ldconfig
> Normally I would edit dpdk-20.xx/config/common_base before meson build,
> but
> that file is gone.
> What are the steps I need to take to enable mlx5 driver? I also recall that
> I don't need to bind the mlx5 driver, is that still the case?
> Thanks

  reply	other threads:[~2020-12-14  8:27 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-12 23:22 Gerry Wan
2020-12-13  8:35 ` Raslan Darawsheh
2020-12-13 11:25   ` Gerry Wan
2020-12-13 11:31     ` Raslan Darawsheh
2020-12-13 21:04       ` Gerry Wan
2020-12-14  5:32         ` Gerry Wan
2020-12-14  8:27           ` Raslan Darawsheh [this message]
2020-12-14  8:40             ` Raslan Darawsheh

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:

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

  git send-email \
    --in-reply-to=DM6PR12MB27484F462D549EA4A35B3332CFC70@DM6PR12MB2748.namprd12.prod.outlook.com \
    --to=rasland@nvidia.com \
    --cc=gerryw@stanford.edu \
    --cc=users@dpdk.org \


* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

DPDK usage discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/users/0 users/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 users users/ https://inbox.dpdk.org/users \
	public-inbox-index users

Example config snippet for mirrors.
Newsgroup available over NNTP:

AGPL code for this site: git clone https://public-inbox.org/public-inbox.git