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

From: Leon Romanovsky <[email-masked]>
Date: Mon, 10 Apr 2023 16:07:49 +0300

From: Leon Romanovsky <[email-masked]>

>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