lkml.org 
[lkml]   [2020]   [Dec]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 027/717] RDMA/rtrs-clt: Missing error from rtrs_rdma_conn_established
    Date
    From: Gioh Kim <gi-oh.kim@cloud.ionos.com>

    [ Upstream commit f553e7601df9566ba7644541fc09152a3a81f793 ]

    When rtrs_rdma_conn_established returns error (non-zero value), the error
    value is stored in con->cm_err and it cannot trigger
    rtrs_rdma_error_recovery. Finally the error of rtrs_rdma_con_established
    will be forgot.

    Fixes: 6a98d71daea1 ("RDMA/rtrs: client: main functionality")
    Link: https://lore.kernel.org/r/20201023074353.21946-5-jinpu.wang@cloud.ionos.com
    Signed-off-by: Gioh Kim <gi-oh.kim@cloud.ionos.com>
    Signed-off-by: Jack Wang <jinpu.wang@cloud.ionos.com>
    Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/infiniband/ulp/rtrs/rtrs-clt.c | 4 ++--
    1 file changed, 2 insertions(+), 2 deletions(-)

    diff --git a/drivers/infiniband/ulp/rtrs/rtrs-clt.c b/drivers/infiniband/ulp/rtrs/rtrs-clt.c
    index 3cc957fea93ee..d54a77ebe1184 100644
    --- a/drivers/infiniband/ulp/rtrs/rtrs-clt.c
    +++ b/drivers/infiniband/ulp/rtrs/rtrs-clt.c
    @@ -1835,8 +1835,8 @@ static int rtrs_clt_rdma_cm_handler(struct rdma_cm_id *cm_id,
    cm_err = rtrs_rdma_route_resolved(con);
    break;
    case RDMA_CM_EVENT_ESTABLISHED:
    - con->cm_err = rtrs_rdma_conn_established(con, ev);
    - if (likely(!con->cm_err)) {
    + cm_err = rtrs_rdma_conn_established(con, ev);
    + if (likely(!cm_err)) {
    /*
    * Report success and wake up. Here we abuse state_wq,
    * i.e. wake up without state change, but we set cm_err.
    --
    2.27.0


    \
     
     \ /
      Last update: 2020-12-28 16:23    [W:3.340 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site