[openib-general] gen2 dev branch
Roland Dreier
roland.list at gmail.com
Mon Aug 2 16:35:05 PDT 2004
> So, assuming that, I'm left wondering what the impact would be on clients if the access layer _didn't_ provide a timeout to match responses with requests. It seems that clients would need to maintain a list of outstanding requests, along with a timer to time them out, information about whether a send had completed, and information on if a response had been received. Is this enough to justify pushing the timeout into the access layer?
That's a good question. If we put timeouts in the consumer instead of
the access layer, then consumers have to delete their requests on
timeout (to avoid leaking request context). Also, I've found that the
timeout code can have subtle ordering/locking bugs (eg handling the
case when a timeout occurs just as a response arrives).
I don't really have a strong opinion, but I would lean towards having
basic handling of timeouts (just generating a callback when a timeout
happens) in the access layer.
- Roland
More information about the general
mailing list