[ofw] [PATCH] ND provider INDAdaper::Query busted
Fab Tillier
ftillier at microsoft.com
Wed Mar 10 23:46:22 PST 2010
The INDAdapter::Query implementation doesn't set the maximum transfer lengths properly. This patch fixes this, and allows MSMPI to chunk large transfers properly.
Note that the changes to ib_port_attr_t to support RoCEE (the transport enum) broke my testing because I tried updating only the ND provider without updating the kernel drivers. This sucked, and the transport field should be moved as Sean pointed out (and provided a patch.)
Signed-off-by: Fab Tillier <ftillier at microsoft.com>
Index: ulp/nd/user/NdAdapter.cpp
===================================================================
--- ulp/nd/user/NdAdapter.cpp (revision 2676)
+++ ulp/nd/user/NdAdapter.cpp (working copy)
@@ -256,12 +256,14 @@ HRESULT CAdapter::Query(
return hr;
}
+ pInfo->VendorId = pAttr->vend_id;
+ pInfo->DeviceId = pAttr->dev_id;
pInfo->MaxInboundSge = pAttr->max_sges;
pInfo->MaxInboundRequests = pAttr->max_wrs;
- pInfo->MaxInboundLength = INT_MAX;
+ pInfo->MaxInboundLength = pAttr->p_port_attr[m_PortNum - 1].max_msg_size;
pInfo->MaxOutboundSge = pAttr->max_sges;
pInfo->MaxOutboundRequests = pAttr->max_wrs;
- pInfo->MaxOutboundLength = INT_MAX;
+ pInfo->MaxOutboundLength = pAttr->p_port_attr[m_PortNum - 1].max_msg_size;
pInfo->MaxInboundReadLimit = pAttr->max_qp_resp_res;
pInfo->MaxOutboundReadLimit = pAttr->max_qp_init_depth;
pInfo->MaxCqEntries = pAttr->max_cqes;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: nd.patch
Type: application/octet-stream
Size: 959 bytes
Desc: nd.patch
URL: <http://lists.openfabrics.org/pipermail/ofw/attachments/20100311/dc01fb25/attachment.obj>
More information about the ofw
mailing list