[openib-general] Questions about SMI

Roland Dreier roland at topspin.com
Wed Oct 13 08:14:42 PDT 2004


    Hal> It seems like the thread ended with an unanswered
    Hal> question. The answer appears to be that process_mad was
    Hal> used. Is that what we want to do for OpenIB ?

That seems simplest to me but I'm not opposed to adding another driver
entry point if that makes things simpler.

    Hal> Is this to be done for all MADs, all SMPs, or only certain
    Hal> ones ? If certain ones, is there a flag to indicate which
    Hal> ones need to be fed to the driver ?

Again, all MADs seems simplest but I'm not opposed to another method.
We need to do more than just SMPs because Tavor also generates
Baseboard Management traps that need to be forwarded.  If we want to
limit which MADs to give to the low-level driver we could add a flag
to ib_driver.flags, like "IB_MAD_TRAP_FORWARDING" or something.

    Hal> Does that avoid the issue of more than 1 consumer for a
    Hal> particular MAD ?  That was another "rule" that I thought we
    Hal> achieved consensus on. It looks like the consumed flag takes
    Hal> care of this.

Right, if you don't count the low-level driver seeing the MAD first.
We can get by with one agent per MAD other than that.

    Hal> Would there also need to be a send routine provided (by the
    Hal> MAD layer) which does not require an agent registration ? If
    Hal> so, is there a way to ensure that the driver is the only
    Hal> component to use this routine ?

I don't see any reason why the driver needs a special send routine --
it should work fine for the driver to create a couple of MAD agents
for each port and use them to send MADs.  If I'm wrong about this and
we need a special send routine, I don't think we have to do anything
to prevent other code from using the routine beyond marking it "for
low-level driver use only" in a comment -- this is the kernel so we
can trust other code not to be malicious.

I'm not that concerned about the details of how we do this for now.
We can always fix it up later, so I suggest you implement whatever
seems easiest to you and I will fix up mthca to match.

 - Roland



More information about the general mailing list