[openib-general] Solicited response with no matching send request
Sean Hefty
mshefty at ichips.intel.com
Wed Nov 10 10:43:56 PST 2004
Hal Rosenstock wrote:
> Currently if no matching send request is found, the received MAD is
> freed (around line 1035 of the current mad.c).
>
> In this case, timeout too short, etc., is this the correct behavior ?
> Or should the receive packet be given to a matching MAD agent with a
> receive handler (perhaps with a different status) ? The latter would
> allow for an additional send model for requests which I don't think is
> supported now at the cost of having the client throw away these receives
> based on a new status code (perhaps some sort of timeout).
I think that this is the behavior that you'd want, but I can see your
view, and I'm open to changing it. From a client's perspective,
dropping an unmatched MAD keeps the client from having to handle receive
MADs without having a send outstanding. That is, I would think that a
client that could make use of this MAD would have to be fairly complex.
I see a couple of cases where this would happen. The first is the one
you mention, where the timeout was too short. If the client retries the
request, then they would need to deal with an unmatched response coming
in before they issued the retry, while the retry is active (where the
retry is sent after the received had checked for a match), or after the
retry completed (with the need to handle multiple unmatched responses.)
The second case where I can see this happening is if the client canceled
the send, and I'm not sure that we'd want to give the client an
unmatched response in this case.
- Sean
More information about the general
mailing list