rdma_resolve_route checks for the full rdma_protocol_iwarp support before calling cma_resolve_iw_route, while in fact rdma_cap_iw_cm is sufficient. This makes it possible to use IW CM for device implementing IW Connection Management only, but not the whole iWarp. Signed-off-by: Vitaly Mayatskikh <vitaly@xxxxxxxxxxxxx> --- drivers/infiniband/core/cma.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/infiniband/core/cma.c b/drivers/infiniband/core/cma.c index c343edf2f664..356da8e625aa 100644 --- a/drivers/infiniband/core/cma.c +++ b/drivers/infiniband/core/cma.c @@ -3378,7 +3378,7 @@ int rdma_resolve_route(struct rdma_cm_id *id, unsigned long timeout_ms) if (!ret) cma_add_id_to_tree(id_priv); } - else if (rdma_protocol_iwarp(id->device, id->port_num)) + else if (rdma_cap_iw_cm(id->device, id->port_num)) ret = cma_resolve_iw_route(id_priv); else ret = -ENOSYS; -- 2.34.1