[openib-general] [PATCH] ib_cancel_mad API
Roland Dreier
roland at topspin.com
Wed Sep 29 16:58:12 PDT 2004
Fab> If deregistration is synchronous then as long as the MAD
Fab> layer keeps reference counts for outstanding sends, the
Fab> client does not need to. The client is guaranteed that their
Fab> send callback will not be called after deregistration
Fab> completes.
I agree that deregistering an agent is fine with the current API.
Fab> As Sean mentioned, it's simpler for clients to know they will
Fab> *always* get a send completion regardless of status. It
Fab> allows them to do all the send completion processing in their
Fab> handler, rather than having it split between the send handler
Fab> and the cancel logic.
Fab> In fact, I'd just rather remove the return value all together
Fab> - what can a client do with the return value that they
Fab> wouldn't know from the status reported to the send handler?
The problem with Sean's proposed API for canceling a single MAD send
is that it's not synchronous. So clients have to wait for the
callback of the send they want to cancel. I agree that as it stands
the return value is not useful because no matter what it is, a
completion may or may not come after the cancel call returns.
- Roland
More information about the general
mailing list