[PATCH rdma-next 0/4] Allow relaxed ordering read in VFs and VMs

From: Leon Romanovsky
Date: Mon Apr 10 2023 - 09:08:05 EST


From: Leon Romanovsky <leonro@xxxxxxxxxx>

>From Avihai,

Currently, Relaxed Ordering (RO) can't be used in VFs directly and in
VFs assigned to QEMU, even if the PF supports RO. This is due to issues
in reporting/emulation of PCI config space RO bit and due to current
HCA capability behavior.

This series fixes it by using a new HCA capability and by relying on FW
to do the "right thing" according to the PF's PCI config space RO value.

Allowing RO in VFs and VMs is valuable since it can greatly improve
performance on some setups. For example, testing throughput of a VF on
an AMD EPYC 7763 and ConnectX-6 Dx setup showed roughly 60% performance
improvement.

Thanks

Avihai Horon (4):
RDMA/mlx5: Remove pcie_relaxed_ordering_enabled() check for RO write
RDMA/mlx5: Check pcie_relaxed_ordering_enabled() in UMR
net/mlx5: Update relaxed ordering read HCA capabilities
RDMA/mlx5: Allow relaxed ordering read in VFs and VMs

drivers/infiniband/hw/mlx5/mr.c | 12 ++++++++----
drivers/infiniband/hw/mlx5/umr.c | 7 +++++--
drivers/infiniband/hw/mlx5/umr.h | 3 ++-
drivers/net/ethernet/mellanox/mlx5/core/en/params.c | 3 +--
drivers/net/ethernet/mellanox/mlx5/core/en_common.c | 9 +++++----
include/linux/mlx5/mlx5_ifc.h | 5 +++--
6 files changed, 24 insertions(+), 15 deletions(-)

--
2.39.2