[openib-general] [PATCH] OFED 1.1-rc3 is ready

Arlin Davis arlin.r.davis at intel.com
Tue Sep 5 14:16:15 PDT 2006


Robert,

Here is a slightly modified patch for your attributes issue. Can you give it a try?

Signed-off by: Arlin Davis ardavis at ichips.intel.com

Index: dapl/openib/dapl_ib_util.c
===================================================================
--- dapl/openib/dapl_ib_util.c	(revision 9106)
+++ dapl/openib/dapl_ib_util.c	(working copy)
@@ -446,6 +446,7 @@
 		return(dapl_convert_errno(errno,"ib_query_hca"));
 
 	if (ia_attr != NULL) {
+		(void) dapl_os_memzero(ia_attr, sizeof(*ia_attr));
 		ia_attr->adapter_name[DAT_NAME_MAX_LENGTH - 1] = '\0';
 		ia_attr->vendor_name[DAT_NAME_MAX_LENGTH - 1] = '\0';
 		ia_attr->ia_address_ptr = 
@@ -470,7 +471,12 @@
 		/* ia_attr->hardware_version_minor   = dev_attr.fw_ver; */
 		ia_attr->max_eps                  = dev_attr.max_qp;
 		ia_attr->max_dto_per_ep           = dev_attr.max_qp_wr;
-		ia_attr->max_rdma_read_per_ep     = dev_attr.max_qp_rd_atom;
+		ia_attr->max_rdma_read_in         = dev_attr.max_qp_rd_atom;
+		ia_attr->max_rdma_read_out        = dev_attr.max_qp_rd_atom;
+		ia_attr->max_rdma_read_per_ep_in  = dev_attr.max_qp_rd_atom;
+		ia_attr->max_rdma_read_per_ep_out = dev_attr.max_qp_rd_atom;
+		ia_attr->max_rdma_read_per_ep_in_guaranteed  = DAT_TRUE;
+		ia_attr->max_rdma_read_per_ep_out_guaranteed = DAT_TRUE;
 		ia_attr->max_evds                 = dev_attr.max_cq;
 		ia_attr->max_evd_qlen             = dev_attr.max_cqe;
 		ia_attr->max_iov_segments_per_dto = dev_attr.max_sge;
@@ -501,6 +507,7 @@
 	}
 	
 	if (ep_attr != NULL) {
+		(void) dapl_os_memzero(ep_attr, sizeof(*ep_attr));
 		ep_attr->max_mtu_size     = port_attr.max_msg_sz;
 		ep_attr->max_rdma_size    = port_attr.max_msg_sz;
 		ep_attr->max_recv_dtos    = dev_attr.max_qp_wr;
Index: dapl/openib_cma/dapl_ib_util.c
===================================================================
--- dapl/openib_cma/dapl_ib_util.c	(revision 9106)
+++ dapl/openib_cma/dapl_ib_util.c	(working copy)
@@ -424,6 +424,7 @@
 		return(dapl_convert_errno(errno,"ib_query_hca"));
 
 	if (ia_attr != NULL) {
+		(void) dapl_os_memzero(ia_attr, sizeof(*ia_attr));
 		ia_attr->adapter_name[DAT_NAME_MAX_LENGTH - 1] = '\0';
 		ia_attr->vendor_name[DAT_NAME_MAX_LENGTH - 1] = '\0';
 		ia_attr->ia_address_ptr = 
@@ -446,6 +447,8 @@
 		ia_attr->hardware_version_major = dev_attr.hw_ver;
 		ia_attr->max_eps                  = dev_attr.max_qp;
 		ia_attr->max_dto_per_ep           = dev_attr.max_qp_wr;
+		ia_attr->max_rdma_read_in         = dev_attr.max_qp_rd_atom;
+		ia_attr->max_rdma_read_out        = dev_attr.max_qp_rd_atom;
 		ia_attr->max_rdma_read_per_ep_in  = dev_attr.max_qp_rd_atom;
 		ia_attr->max_rdma_read_per_ep_out = dev_attr.max_qp_rd_atom;
 		ia_attr->max_rdma_read_per_ep_in_guaranteed  = DAT_TRUE;
@@ -481,6 +484,7 @@
 	}
 	
 	if (ep_attr != NULL) {
+		(void) dapl_os_memzero(ep_attr, sizeof(*ep_attr));
 		ep_attr->max_mtu_size     = port_attr.max_msg_sz;
 		ep_attr->max_rdma_size    = port_attr.max_msg_sz;
 		ep_attr->max_recv_dtos    = dev_attr.max_qp_wr;
Index: dapl/openib_scm/dapl_ib_util.c
===================================================================
--- dapl/openib_scm/dapl_ib_util.c	(revision 9106)
+++ dapl/openib_scm/dapl_ib_util.c	(working copy)
@@ -373,6 +373,7 @@
 		return(dapl_convert_errno(errno,"ib_query_hca"));
 
 	if (ia_attr != NULL) {
+		(void) dapl_os_memzero(ia_attr, sizeof(*ia_attr));
 		ia_attr->adapter_name[DAT_NAME_MAX_LENGTH - 1] = '\0';
 		ia_attr->vendor_name[DAT_NAME_MAX_LENGTH - 1] = '\0';
 		ia_attr->ia_address_ptr = (DAT_IA_ADDRESS_PTR)&hca_ptr->hca_address;
@@ -390,7 +391,12 @@
 		/* ia_attr->hardware_version_minor   = dev_attr.fw_ver; */
 		ia_attr->max_eps                  = dev_attr.max_qp;
 		ia_attr->max_dto_per_ep           = dev_attr.max_qp_wr;
-		ia_attr->max_rdma_read_per_ep     = dev_attr.max_qp_rd_atom;
+		ia_attr->max_rdma_read_in         = dev_attr.max_qp_rd_atom;
+		ia_attr->max_rdma_read_out        = dev_attr.max_qp_rd_atom;
+		ia_attr->max_rdma_read_per_ep_in  = dev_attr.max_qp_rd_atom;
+		ia_attr->max_rdma_read_per_ep_out = dev_attr.max_qp_rd_atom;
+		ia_attr->max_rdma_read_per_ep_in_guaranteed  = DAT_TRUE;
+		ia_attr->max_rdma_read_per_ep_out_guaranteed = DAT_TRUE;
 		ia_attr->max_evds                 = dev_attr.max_cq;
 		ia_attr->max_evd_qlen             = dev_attr.max_cqe;
 		ia_attr->max_iov_segments_per_dto = dev_attr.max_sge;
@@ -422,6 +428,7 @@
 	}
 	
 	if (ep_attr != NULL) {
+		(void) dapl_os_memzero(ep_attr, sizeof(*ep_attr));
 		ep_attr->max_mtu_size     = port_attr.max_msg_sz;
 		ep_attr->max_rdma_size    = port_attr.max_msg_sz;
 		ep_attr->max_recv_dtos    = dev_attr.max_qp_wr;




More information about the general mailing list