RDMA/cxgb3: Set the max_qp_init_rd_atom attribute in query_device
authorSteve Wise <swise@opengridcomputing.com>
Fri, 9 Nov 2007 15:21:58 +0000 (09:21 -0600)
committerRoland Dreier <rolandd@cisco.com>
Tue, 13 Nov 2007 23:27:00 +0000 (15:27 -0800)
The device attribute max_qp_init_rd_atom is not getting set in cxgb3's
query_device method.  Version 1.0.4 of librdmacm now validates the
user's requested initiator and responder resources against the max
supported by the device.  Since iw_cxgb3 wasn't setting this attribute
(and it defaulted to 0), all rdma_connect()s fail if there are
initiator resources requested by the app.  Fix this by setting the
correct value in iwch_query_device().

Signed-off-by: Steve Wise <swise@opengridcomputing.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/infiniband/hw/cxgb3/iwch_provider.c

index f0c777589374cccf1af919534805675246e05f2c..b5436ca92e68cdb8d09063861ecd7af6bb89eeb5 100644 (file)
@@ -1000,6 +1000,7 @@ static int iwch_query_device(struct ib_device *ibdev,
        props->max_sge = dev->attr.max_sge_per_wr;
        props->max_sge_rd = 1;
        props->max_qp_rd_atom = dev->attr.max_rdma_reads_per_qp;
+       props->max_qp_init_rd_atom = dev->attr.max_rdma_reads_per_qp;
        props->max_cq = dev->attr.max_cqs;
        props->max_cqe = dev->attr.max_cqes_per_cq;
        props->max_mr = dev->attr.max_mem_regs;