lkml.org 
[lkml]   [2016]   [Aug]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 3.14 34/46] IB/mlx5: Fix returned values of query QP
    Date
    3.14-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Noa Osherovich <noaos@mellanox.com>

    commit 0540d8148d419bf769e5aa99c77027febd8922f0 upstream.

    Some variables were not initialized properly: max_recv_wr,
    max_recv_sge, max_send_wr, qp_context and max_inline_data.

    Fixes: e126ba97dba9 ('mlx5: Add driver for Mellanox Connect-IB...')
    Signed-off-by: Noa Osherovich <noaos@mellanox.com>
    Signed-off-by: Leon Romanovsky <leon@kernel.org>
    Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
    Signed-off-by: Doug Ledford <dledford@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/infiniband/hw/mlx5/qp.c | 14 +++++++++-----
    1 file changed, 9 insertions(+), 5 deletions(-)

    --- a/drivers/infiniband/hw/mlx5/qp.c
    +++ b/drivers/infiniband/hw/mlx5/qp.c
    @@ -169,6 +169,8 @@ static int set_rq_size(struct mlx5_ib_de
    qp->rq.max_gs = 0;
    qp->rq.wqe_cnt = 0;
    qp->rq.wqe_shift = 0;
    + cap->max_recv_wr = 0;
    + cap->max_recv_sge = 0;
    } else {
    if (ucmd) {
    qp->rq.wqe_cnt = ucmd->rq_wqe_count;
    @@ -2503,17 +2505,19 @@ int mlx5_ib_query_qp(struct ib_qp *ibqp,
    qp_attr->cap.max_recv_sge = qp->rq.max_gs;

    if (!ibqp->uobject) {
    - qp_attr->cap.max_send_wr = qp->sq.wqe_cnt;
    + qp_attr->cap.max_send_wr = qp->sq.max_post;
    qp_attr->cap.max_send_sge = qp->sq.max_gs;
    + qp_init_attr->qp_context = ibqp->qp_context;
    } else {
    qp_attr->cap.max_send_wr = 0;
    qp_attr->cap.max_send_sge = 0;
    }

    - /* We don't support inline sends for kernel QPs (yet), and we
    - * don't know what userspace's value should be.
    - */
    - qp_attr->cap.max_inline_data = 0;
    + qp_init_attr->qp_type = ibqp->qp_type;
    + qp_init_attr->recv_cq = ibqp->recv_cq;
    + qp_init_attr->send_cq = ibqp->send_cq;
    + qp_init_attr->srq = ibqp->srq;
    + qp_attr->cap.max_inline_data = qp->max_inline_data;

    qp_init_attr->cap = qp_attr->cap;


    \
     
     \ /
      Last update: 2016-09-17 09:57    [W:7.699 / U:0.268 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site