> There is something that bothers me in sa_query. > According to table 115 in the IB-SPEC when the status in the MAD hdr > is 1,2 or 3 it shouldn't be considered to as an error. (1 means busy, > 2 means redirection, and 3 means both). > The function "recv_handler" in core/sa_query.c sets the status of the > sa_query before calling the callback function. > It sets the status according to the status returned in the mad > header. (mad_recv_wc->recv_buf.mad->mad_hdr.status) > If the status in the mad_hdr is different from 0 it sets the return > status to -EINVAL. > This mean that the higher layers (e.g., SRP) do not know what was the > exact status and therefore treat status 1 (busy) as an error. > Am I missing something?
No, you are right. I know the spec says a "busy" status is not an error, but I've not seen anything actually return that, and I'm not sure what a consumer can usefully do with it. Also, we haven't tried handling SA redirection at all. Your issue would be one thing we would have to fix if we did handle it. So you are correct, and I wouldn't object to handling all this more intelligently, but I would want to see some consumer that cared, too. - R. _______________________________________________ openib-general mailing list [email protected] http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
