lkml.org 
[lkml]   [2018]   [Jan]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.9 06/75] iw_cxgb4: Only validate the MSN for successful completions
    Date
    4.9-stable review patch.  If anyone has any objections, please let me know.

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

    From: Steve Wise <swise@opengridcomputing.com>

    commit f55688c45442bc863f40ad678c638785b26cdce6 upstream.

    If the RECV CQE is in error, ignore the MSN check. This was causing
    recvs that were flushed into the sw cq to be completed with the wrong
    status (BAD_MSN instead of FLUSHED).

    Signed-off-by: Steve Wise <swise@opengridcomputing.com>
    Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/infiniband/hw/cxgb4/cq.c | 6 +++---
    1 file changed, 3 insertions(+), 3 deletions(-)

    --- a/drivers/infiniband/hw/cxgb4/cq.c
    +++ b/drivers/infiniband/hw/cxgb4/cq.c
    @@ -575,10 +575,10 @@ static int poll_cq(struct t4_wq *wq, str
    ret = -EAGAIN;
    goto skip_cqe;
    }
    - if (unlikely((CQE_WRID_MSN(hw_cqe) != (wq->rq.msn)))) {
    + if (unlikely(!CQE_STATUS(hw_cqe) &&
    + CQE_WRID_MSN(hw_cqe) != wq->rq.msn)) {
    t4_set_wq_in_error(wq);
    - hw_cqe->header |= htonl(CQE_STATUS_V(T4_ERR_MSN));
    - goto proc_cqe;
    + hw_cqe->header |= cpu_to_be32(CQE_STATUS_V(T4_ERR_MSN));
    }
    goto proc_cqe;
    }

    \
     
     \ /
      Last update: 2018-01-01 16:21    [W:5.720 / U:0.152 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site