--- A/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp	Thu Feb 24 09:34:29 2011
+++ B/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp	Thu Feb 24 09:05:46 2011
@@ -1442,6 +1442,12 @@
 			(p_port->p_ca_attrs->max_srq_wrs/2)) );
 
 	p_port->ib_mgr.srq_qp_cnt = 0; 
+	p_port->ib_mgr.srq_max_depth = srq_attr.max_wr;
+
+	/* setup SRQ depth based on rq_depth property++: setup such that 80% of
+	 * allocated SRQ (recv_pool_depth) buffers are posted. See cm_buf_mgr_init().
+	 */
+	p_port->ib_mgr.srq_depth = (srq_attr.max_wr / 5) * 4;
 
 	ib_status = p_port->p_adapter->p_ifc->create_srq( p_port->ib_mgr.h_pd, 
 													  &srq_attr, 
@@ -6118,7 +6124,7 @@
 	{
 		IPOIB_PRINT_EXIT( TRACE_LEVEL_WARNING, IPOIB_DBG_SEND,
 			("No available WQEs.\n") );
-		cl_dbg_out("HW is full\n");
+		cl_dbg_out("[IPoIB] HW send_q is full\n");
 		return NDIS_STATUS_PENDING;
 	}
 
