diff options
author | Yishai Hadas <yishaih@mellanox.com> | 2018-11-26 08:28:38 +0200 |
---|---|---|
committer | Doug Ledford <dledford@redhat.com> | 2018-12-04 13:46:42 -0500 |
commit | 5aa3771ded54894ce34f4ec6bc2bb403e6771eb2 (patch) | |
tree | 731712184382b8d4399e11f37464ba53c4675e55 /drivers/infiniband/hw/mlx5/srq.c | |
parent | 719598c98d1961e78e2ad514a2cc15deb5e41db5 (diff) | |
download | lwn-5aa3771ded54894ce34f4ec6bc2bb403e6771eb2.tar.gz lwn-5aa3771ded54894ce34f4ec6bc2bb403e6771eb2.zip |
IB/mlx5: Allow XRC usage via verbs in DEVX context
Allows XRC usage from the verbs flow in a DEVX context.
As XRCD is some shared kernel resource between processes it should be
created with UID=0 to point on that.
As a result once XRC QP/SRQ are created they must be used as well with
UID=0 so that firmware will allow the XRCD usage.
Signed-off-by: Yishai Hadas <yishaih@mellanox.com>
Reviewed-by: Artemy Kovalyov <artemyko@mellanox.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'drivers/infiniband/hw/mlx5/srq.c')
-rw-r--r-- | drivers/infiniband/hw/mlx5/srq.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/mlx5/srq.c b/drivers/infiniband/hw/mlx5/srq.c index b3aef0eb39cb..0413b10dea71 100644 --- a/drivers/infiniband/hw/mlx5/srq.c +++ b/drivers/infiniband/hw/mlx5/srq.c @@ -113,7 +113,7 @@ static int create_srq_user(struct ib_pd *pd, struct mlx5_ib_srq *srq, in->log_page_size = page_shift - MLX5_ADAPTER_PAGE_SHIFT; in->page_offset = offset; - in->uid = to_mpd(pd)->uid; + in->uid = (in->type != IB_SRQT_XRC) ? to_mpd(pd)->uid : 0; if (MLX5_CAP_GEN(dev->mdev, cqe_version) == MLX5_CQE_VERSION_V1 && in->type != IB_SRQT_BASIC) in->user_index = uidx; |