• Zhu Yanjun's avatar
    RDMA/rxe: Skip dgid check in loopback mode · 5c99274b
    Zhu Yanjun authored
    In the loopback tests, the following call trace occurs.
    
     Call Trace:
      __rxe_do_task+0x1a/0x30 [rdma_rxe]
      rxe_qp_destroy+0x61/0xa0 [rdma_rxe]
      rxe_destroy_qp+0x20/0x60 [rdma_rxe]
      ib_destroy_qp_user+0xcc/0x220 [ib_core]
      uverbs_free_qp+0x3c/0xc0 [ib_uverbs]
      destroy_hw_idr_uobject+0x24/0x70 [ib_uverbs]
      uverbs_destroy_uobject+0x43/0x1b0 [ib_uverbs]
      uobj_destroy+0x41/0x70 [ib_uverbs]
      __uobj_get_destroy+0x39/0x70 [ib_uverbs]
      ib_uverbs_destroy_qp+0x88/0xc0 [ib_uverbs]
      ib_uverbs_handler_UVERBS_METHOD_INVOKE_WRITE+0xb9/0xf0 [ib_uverbs]
      ib_uverbs_cmd_verbs+0xb16/0xc30 [ib_uverbs]
    
    The root cause is that the actual RDMA connection is not created in the
    loopback tests and the rxe_match_dgid will fail randomly.
    
    To fix this call trace which appear in the loopback tests, skip check of
    the dgid.
    
    Fixes: 8700e3e7 ("Soft RoCE driver")
    Link: https://lore.kernel.org/r/20200630123605.446959-1-leon@kernel.orgSigned-off-by: default avatarZhu Yanjun <yanjunz@mellanox.com>
    Signed-off-by: default avatarLeon Romanovsky <leonro@mellanox.com>
    Signed-off-by: default avatarJason Gunthorpe <jgg@nvidia.com>
    5c99274b
rxe_recv.c 10 KB