diff options
| author | Dmitry Torokhov <[email protected]> | 2023-08-30 16:06:38 -0700 | 
|---|---|---|
| committer | Dmitry Torokhov <[email protected]> | 2023-08-30 16:06:38 -0700 | 
| commit | 1ac731c529cd4d6adbce134754b51ff7d822b145 (patch) | |
| tree | 143ab3f35ca5f3b69f583c84e6964b17139c2ec1 /drivers/infiniband/hw/mlx5/mr.c | |
| parent | 07b4c950f27bef0362dc6ad7ee713aab61d58149 (diff) | |
| parent | 54116d442e001e1b6bd482122043b1870998a1f3 (diff) | |
Merge branch 'next' into for-linus
Prepare input updates for 6.6 merge window.
Diffstat (limited to 'drivers/infiniband/hw/mlx5/mr.c')
| -rw-r--r-- | drivers/infiniband/hw/mlx5/mr.c | 12 | 
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/infiniband/hw/mlx5/mr.c b/drivers/infiniband/hw/mlx5/mr.c index 67356f515261..2017ede100a6 100644 --- a/drivers/infiniband/hw/mlx5/mr.c +++ b/drivers/infiniband/hw/mlx5/mr.c @@ -67,11 +67,14 @@ static void set_mkc_access_pd_addr_fields(void *mkc, int acc, u64 start_addr,  	MLX5_SET(mkc, mkc, lw, !!(acc & IB_ACCESS_LOCAL_WRITE));  	MLX5_SET(mkc, mkc, lr, 1); -	if ((acc & IB_ACCESS_RELAXED_ORDERING) && -	    pcie_relaxed_ordering_enabled(dev->mdev->pdev)) { +	if (acc & IB_ACCESS_RELAXED_ORDERING) {  		if (MLX5_CAP_GEN(dev->mdev, relaxed_ordering_write))  			MLX5_SET(mkc, mkc, relaxed_ordering_write, 1); -		if (MLX5_CAP_GEN(dev->mdev, relaxed_ordering_read)) + +		if (MLX5_CAP_GEN(dev->mdev, relaxed_ordering_read) || +		    (MLX5_CAP_GEN(dev->mdev, +				  relaxed_ordering_read_pci_enabled) && +		     pcie_relaxed_ordering_enabled(dev->mdev->pdev)))  			MLX5_SET(mkc, mkc, relaxed_ordering_read, 1);  	} @@ -791,7 +794,8 @@ static int get_unchangeable_access_flags(struct mlx5_ib_dev *dev,  		ret |= IB_ACCESS_RELAXED_ORDERING;  	if ((access_flags & IB_ACCESS_RELAXED_ORDERING) && -	    MLX5_CAP_GEN(dev->mdev, relaxed_ordering_read) && +	    (MLX5_CAP_GEN(dev->mdev, relaxed_ordering_read) || +	     MLX5_CAP_GEN(dev->mdev, relaxed_ordering_read_pci_enabled)) &&  	    !MLX5_CAP_GEN(dev->mdev, relaxed_ordering_read_umr))  		ret |= IB_ACCESS_RELAXED_ORDERING;  |