lkml.org 
[lkml]   [2021]   [May]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.12 024/127] RDMA/mlx5: Fix query DCT via DEVX
    Date
    From: Maor Gottlieb <maorg@nvidia.com>

    [ Upstream commit cfa3b797118eda7d68f9ede9b1a0279192aca653 ]

    When executing DEVX command to query QP object, we need to take the QP
    type from the mlx5_ib_qp struct which hold the driver specific QP types as
    well, such as DC.

    Fixes: 34613eb1d2ad ("IB/mlx5: Enable modify and query verbs objects via DEVX")
    Link: https://lore.kernel.org/r/6eee15d63f09bb70787488e0cf96216e2957f5aa.1621413654.git.leonro@nvidia.com
    Reviewed-by: Yishai Hadas <yishaih@nvidia.com>
    Signed-off-by: Maor Gottlieb <maorg@nvidia.com>
    Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
    Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/infiniband/hw/mlx5/devx.c | 6 ++----
    1 file changed, 2 insertions(+), 4 deletions(-)

    diff --git a/drivers/infiniband/hw/mlx5/devx.c b/drivers/infiniband/hw/mlx5/devx.c
    index 07b8350929cd..81276b4247f8 100644
    --- a/drivers/infiniband/hw/mlx5/devx.c
    +++ b/drivers/infiniband/hw/mlx5/devx.c
    @@ -630,9 +630,8 @@ static bool devx_is_valid_obj_id(struct uverbs_attr_bundle *attrs,
    case UVERBS_OBJECT_QP:
    {
    struct mlx5_ib_qp *qp = to_mqp(uobj->object);
    - enum ib_qp_type qp_type = qp->ibqp.qp_type;

    - if (qp_type == IB_QPT_RAW_PACKET ||
    + if (qp->type == IB_QPT_RAW_PACKET ||
    (qp->flags & IB_QP_CREATE_SOURCE_QPN)) {
    struct mlx5_ib_raw_packet_qp *raw_packet_qp =
    &qp->raw_packet_qp;
    @@ -649,10 +648,9 @@ static bool devx_is_valid_obj_id(struct uverbs_attr_bundle *attrs,
    sq->tisn) == obj_id);
    }

    - if (qp_type == MLX5_IB_QPT_DCT)
    + if (qp->type == MLX5_IB_QPT_DCT)
    return get_enc_obj_id(MLX5_CMD_OP_CREATE_DCT,
    qp->dct.mdct.mqp.qpn) == obj_id;
    -
    return get_enc_obj_id(MLX5_CMD_OP_CREATE_QP,
    qp->ibqp.qp_num) == obj_id;
    }
    --
    2.30.2


    \
     
     \ /
      Last update: 2021-05-24 18:03    [W:4.064 / U:0.080 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site