[openib-general] Re: ib_mad.h ib_mad_agent.hi_tid
Hal Rosenstock
halr at voltaire.com
Wed Sep 1 12:53:50 PDT 2004
On Wed, 2004-09-01 at 14:15, Sean Hefty wrote:
> On Wed, 01 Sep 2004 14:57:03 -0400
> Hal Rosenstock <halr at voltaire.com> wrote:
>
> > As long as the CM clients use the hi_tid assigned by the access layer in
> > forming their TIDs, I don't see a problem with multiple active CMs.
>
> The problem is routing MADs back to the proper CM without the access layer
> knowing the CM protocol. E.g. when a REP is received by the access layer,
> it can route the REP to the client registered to receive CM MADs based
> on the management class, or it needs to look at the management class,
> see that it's the CM, check the method, and then route based on the
> TID to the proper client.
I was thinking the latter.
> And getting the DREQ to the right CM would be difficult, so requires the CM
> to be active for all message sequences (REQ, DREQ, and LAP).
Yup, that's the crux of this. The passive CM is not always so passive
:-(
> I'm slowly remembering why we treated CM MADs differently and routed them
> to the one and only CM in all cases.
Me too. CM is a hairball.
I think it is acceptable to run a single CM at any one time. This
doesn't preclude running different CM implementations if more than one
is interesting to OpenIB; just not at the same time. If anyone thinks
otherwise, now is the time to speak your piece.
> > > My preference is for the access layer to know as little about the CM protocol
> > > as possible.
> >
> > Mine as well.
>
> I only wish that the architects had shared this view...
It would be nice to rewrite history on this...
> > I'm back to where I was on this as adding a flag seems of minimal
> > benefit as you point out. So I would have the access layer set
> > unsolicited TIDs with the exception of Send methods (CM and other
> > clients using the Send method need to handle their own TIDs on send).
> > If that is deemed too unclean, then all send TID handling is back at
> > the client :-(
>
> At this point, my vote is for the clients to set the TID in all cases,
> but are required to use the upper TID assigned to them by the access layer.
> Clients already need to manage and set the lower TID, so this isn't a big issue.
OK.
> > Also, should the access layer validate that the client uses the hi_tid
> > supplied in the mad_agent in the TIDs of sent MADs ?
>
> It's probably not worth it. Since response TIDs have to match requests,
> adding this checks puts us back to having the access layer determine if a MAD is
> unsolicited before the check is done, which brings back all of the CM issues...
Right.
-- Hal
More information about the general
mailing list