[openib-general] Re: RMPP
Fab Tillier
ftillier at silverstorm.com
Tue Jun 28 13:57:20 PDT 2005
> From: Hal Rosenstock [mailto:halr at voltaire.com]
> Sent: Tuesday, June 28, 2005 11:47 AM
> I think I see what is going on here...
>
> In user_mad.c::send_handler
>
>
> if (send_wc->status == IB_WC_RESP_TIMEOUT_ERR) {
> packet->mad.hdr.status = ETIMEDOUT;
>
> if (!queue_packet(file, agent, packet))
> return;
> }
>
> That is what is causing the problem. I think the send side queues the
> packet on a timeout and simulates a receive so that a transaction can be
> terminated. RMPP sends appear to be a little different in that even non
> transactions get timeouts.
Why is a receive generated at all? Shouldn't the send completion be enough? It
seems odd to just generate a receive indication with the sent data when really,
nothing was received. From an app perspective, it seems that handling the
IB_WC_RESP_TIMEOUT_ERR case should be sufficient to indicate the transaction is
complete.
- Fab
More information about the general
mailing list