lkml.org 
[lkml]   [2018]   [Apr]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.14 036/183] i40iw: Zero-out consumer key on allocate stag for FMR
    Date
    4.14-stable review patch.  If anyone has any objections, please let me know.

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

    From: Shiraz Saleem <shiraz.saleem@intel.com>


    [ Upstream commit 6376e926af1a8661dd1b2e6d0896e07f84a35844 ]

    If the application invalidates the MR before the FMR WR, HW parses the
    consumer key portion of the stag and returns an invalid stag key
    Asynchronous Event (AE) that tears down the QP.

    Fix this by zeroing-out the consumer key portion of the allocated stag
    returned to application for FMR.

    Fixes: ee855d3b93f3 ("RDMA/i40iw: Add base memory management extensions")
    Signed-off-by: Shiraz Saleem <shiraz.saleem@intel.com>
    Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
    Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/infiniband/hw/i40iw/i40iw_verbs.c | 1 +
    1 file changed, 1 insertion(+)

    --- a/drivers/infiniband/hw/i40iw/i40iw_verbs.c
    +++ b/drivers/infiniband/hw/i40iw/i40iw_verbs.c
    @@ -1656,6 +1656,7 @@ static struct ib_mr *i40iw_alloc_mr(stru
    err_code = -EOVERFLOW;
    goto err;
    }
    + stag &= ~I40IW_CQPSQ_STAG_KEY_MASK;
    iwmr->stag = stag;
    iwmr->ibmr.rkey = stag;
    iwmr->ibmr.lkey = stag;

    \
     
     \ /
      Last update: 2018-04-25 13:29    [W:4.148 / U:0.236 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site