[openib-general] [PATCH][SDP] iocb send path bug.
Libor Michalek
libor at topspin.com
Tue Mar 29 16:13:53 PST 2005
Simple patch for a data path bug when there is a size mismatch
between the AIO read and write buffers of two connection peers.
Without the patch the send path will process the remains of an
active sdpc_iocb which has a RDMA write already in progress. When
the RDMA write completes the sdpc_iocb will not be available for
post processing. With the patch the send data path stalls until
either the write RDMA completes or a new sink advertisement arives.
-Libor
Index: sdp_send.c
===================================================================
--- sdp_send.c (revision 2071)
+++ sdp_send.c (working copy)
@@ -878,7 +878,8 @@
* hope that a new sink advertisment will arrive, because
* sinks are more efficient.
*/
- if (sdp_desc_q_size(&conn->w_snk) > 0)
+ if (sdp_desc_q_size(&conn->w_snk) ||
+ iocb->flags & SDP_IOCB_F_RDMA_W)
goto done;
if (conn->src_zthresh > iocb->len ||
More information about the general
mailing list