[openib-general] GSI compromise
Sean Hefty
mshefty at ichips.intel.com
Wed Aug 4 08:01:29 PDT 2004
On Tue, 03 Aug 2004 21:19:39 -0700
Roland Dreier <roland at topspin.com> wrote:
> This looks pretty sane to me -- I really like the proposed way of
> handling redirection.
Thanks for reviewing this.
> - what callback will a consumer receive if no response is received
> before a send timeout?
Hmm... maybe some sort of transaction status needs to be added to the ib_mad_msg to indicate a timeout on the send. I'm not sure we want to override the work completion status for this...
> - where does transaction ID allocation happen?
I was assuming with the registration call. The client TID should probably be placed inside struct ib_mad_reg.
> - how does the MAD layer know how many elements are in the
> method_array parameter of ib_mad_reg_class()?
I was assuming a fixed size of 127 elements. (At least I think it's 127 methods per class.) This could probably be an optional argument if the registration is for all methods of a given class.
> - where is the GRH info stored if ib_mad_msg.global_route is set?
buf would point to the start of the MAD, including the GRH. Based on a separate mail, I'm still trying to figure out the best way to send/receive MADs without unnecessary data copies.
> - should we use a "struct list_head" instead of our own type for
> ib_mad_msg.next?
I'm fine with this. I followed what I had for the work requests. Maybe those should change as well?
> - I assume we'll have helpers for parsing ClassPortInfo redirection
> responses and updating a message.
I'm good with redirection helper routines. I'd just like to get a clean layering. Btw, does anyone know if you can redirect in the midding of sending an RMPP message?
> - are any values other than IB_QPT_SMI and IB_QPT_GSI valid for the
> qp_type parameter of ib_mad_reg_class()?
I wasn't thinking that there would be. In fact, I was considering the impact of removing ib_get_spl_qp from the exposed access layer API. I was also considering preventing calls to ib_modify_qp/ib_destroy_qp from using a QP of type SMI/GSI, but allowing calls to ib_query_qp to pass through. Thoughts?
> - should ib_qp_redir()/ib_process_wc() have "_mad_" in their name to
> give more of a clue as to what they do?
Probably. :)
> - are you thinking that a single "support RMPP" flag would be passed
> into ib_mad_reg_class() and ib_qp_redir()?
That is my current thought. If the flag is set, it indicates that the class/methods being accessed by the user carry the RMPP header. I think that this would allow a vendor to define their own MADs, but take advantage of RMPP as long as the standard RMPP header was used.
More information about the general
mailing list