aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorMustafa Ismail <mustafa.ismail@intel.com>2023-05-22 10:56:54 -0500
committerJason Gunthorpe <jgg@nvidia.com>2023-05-29 14:06:29 -0300
commit5842d1d9c1b0d17e0c29eae65ae1f245f83682dd (patch)
tree3bf766ff2f6ea6e44e4b1aff7f8f75f809812422
parentRDMA/irdma: Prevent QP use after free (diff)
downloadwireguard-linux-5842d1d9c1b0d17e0c29eae65ae1f245f83682dd.tar.xz
wireguard-linux-5842d1d9c1b0d17e0c29eae65ae1f245f83682dd.zip
RDMA/irdma: Fix Local Invalidate fencing
If the local invalidate fence is indicated in the WR, only the read fence is currently being set in WQE. Fix this to set both the read and local fence in the WQE. Fixes: b48c24c2d710 ("RDMA/irdma: Implement device supported verb APIs") Link: https://lore.kernel.org/r/20230522155654.1309-4-shiraz.saleem@intel.com Signed-off-by: Mustafa Ismail <mustafa.ismail@intel.com> Signed-off-by: Shiraz Saleem <shiraz.saleem@intel.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
-rw-r--r--drivers/infiniband/hw/irdma/verbs.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/irdma/verbs.c b/drivers/infiniband/hw/irdma/verbs.c
index 68ce3cd40002..eaa12c124598 100644
--- a/drivers/infiniband/hw/irdma/verbs.c
+++ b/drivers/infiniband/hw/irdma/verbs.c
@@ -3292,6 +3292,7 @@ static int irdma_post_send(struct ib_qp *ibqp,
break;
case IB_WR_LOCAL_INV:
info.op_type = IRDMA_OP_TYPE_INV_STAG;
+ info.local_fence = info.read_fence;
info.op.inv_local_stag.target_stag = ib_wr->ex.invalidate_rkey;
err = irdma_uk_stag_local_invalidate(ukqp, &info, true);
break;