[v2] common/mlx5: enable operation in iova virtual address mode
Checks
Commit Message
The ConnectX NIC series hardware provides advanced internal
MMU option and can operate directly over virtual addresses,
the host software should not care about any virtual-to-physical
address translations. It means the mlx5 PMDs can operate in DPDK
IOVA VA (virtual address) mode transparently.
To force IOVA VA mode the DPDK should be built with meson option:
enable_iova_as_pa=false
With this option only drivers supporting IOVA VA mode are enabled.
This patch marks mlx5 drivers with require_iova_in_mbuf flag false
value, thus allowing their compilation for IOVA VA mode.
Signed-off-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
---
v1: http://patches.dpdk.org/project/dpdk/patch/20230412125320.8585-1-viacheslavo@nvidia.com/
v2: fixed typos in commit message, reworded a little bit
---
drivers/common/mlx5/meson.build | 2 ++
drivers/compress/mlx5/meson.build | 2 ++
drivers/crypto/mlx5/meson.build | 2 ++
drivers/net/mlx5/meson.build | 2 ++
drivers/regex/mlx5/meson.build | 2 ++
5 files changed, 10 insertions(+)
Comments
> From: Viacheslav Ovsiienko [mailto:viacheslavo@nvidia.com]
> Sent: Wednesday, 12 April 2023 19.07
>
> The ConnectX NIC series hardware provides advanced internal
> MMU option and can operate directly over virtual addresses,
> the host software should not care about any virtual-to-physical
> address translations. It means the mlx5 PMDs can operate in DPDK
> IOVA VA (virtual address) mode transparently.
>
> To force IOVA VA mode the DPDK should be built with meson option:
>
> enable_iova_as_pa=false
>
> With this option only drivers supporting IOVA VA mode are enabled.
> This patch marks mlx5 drivers with require_iova_in_mbuf flag false
> value, thus allowing their compilation for IOVA VA mode.
>
> Signed-off-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
Acked-by: Morten Brørup <mb@smartsharesystems.com>
Hi,
> -----Original Message-----
> From: Slava Ovsiienko <viacheslavo@nvidia.com>
> Sent: Wednesday, April 12, 2023 8:07 PM
> To: dev@dpdk.org
> Cc: Matan Azrad <matan@nvidia.com>; Raslan Darawsheh
> <rasland@nvidia.com>; Ori Kam <orika@nvidia.com>
> Subject: [PATCH v2] common/mlx5: enable operation in iova virtual address
> mode
>
> The ConnectX NIC series hardware provides advanced internal MMU option
> and can operate directly over virtual addresses, the host software should not
> care about any virtual-to-physical address translations. It means the mlx5
> PMDs can operate in DPDK IOVA VA (virtual address) mode transparently.
>
> To force IOVA VA mode the DPDK should be built with meson option:
>
> enable_iova_as_pa=false
>
> With this option only drivers supporting IOVA VA mode are enabled.
> This patch marks mlx5 drivers with require_iova_in_mbuf flag false value, thus
> allowing their compilation for IOVA VA mode.
>
> Signed-off-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
>
> ---
> v1: http://patches.dpdk.org/project/dpdk/patch/20230412125320.8585-1-
> viacheslavo@nvidia.com/
> v2: fixed typos in commit message, reworded a little bit
Patch applied to next-net-mlx,
Kindest regards,
Raslan Darawsheh
@@ -42,6 +42,8 @@ else
cflags += [ '-UPEDANTIC' ]
endif
+require_iova_in_mbuf = false
+
mlx5_config = configuration_data()
subdir(exec_env)
configure_file(output: 'mlx5_autoconf.h', configuration: mlx5_config)
@@ -28,3 +28,5 @@ foreach option:cflags_options
cflags += option
endif
endforeach
+
+require_iova_in_mbuf = false
@@ -30,3 +30,5 @@ foreach option:cflags_options
cflags += option
endif
endforeach
+
+require_iova_in_mbuf = false
@@ -77,6 +77,8 @@ else
cflags += [ '-UPEDANTIC' ]
endif
+require_iova_in_mbuf = false
+
testpmd_sources += files('mlx5_testpmd.c')
subdir(exec_env)
@@ -32,3 +32,5 @@ foreach option:cflags_options
cflags += option
endif
endforeach
+
+require_iova_in_mbuf = false