[openib-general] Questions about SMI
Hal Rosenstock
Tue Oct 12 10:39:07 PDT 2004
On Tue, 2004-10-12 at 13:20, Roland Dreier wrote:
> I'm reading over the SMI implementation, and I have a few questions.
>
> First of all, I don't see how LID-routed SMPs or PMA MADs are handled
> correctly. As far as I can tell, what ends up happening for a LR-SMP
> or PMA query is:
>
> smi_recv_handler() gets MAD and just calls
> smi_recv_smp(), which will call
> smi_handle_smp_recv() which just returns 1
> so smi_recv_smp() goes on to call
> smi_check_forward_smp(), which just returns 1
> so smi_recv_smp() calls smi_send_smp()
>
> etc.
>
> Am I wrong or is this completely b0rken?
No, it's not broken (of course depending on one's definition) and yes,
this can be bypassed and is on my TODO list. I have been focusing more
on functionality right now.
> Also, it seems very confusing that PMA queries end up going through
> functions named "smi_recv_handler()" and so on (since they are using
> GSI, not SMI).
Understand the evolution of the code. It started with just being DR SMP
and evolved to support LR SMP and then PerfMgt. I will change the
routine names and code flow so it is more intuitive.
> In the same vein, having port_priv->mad_agent and
> port_priv->mad_agent2 is less than enlightening; it would make more
> sense to use either more descriptive names or an array of agents.
OK.
> Finally, what's the plan for handling device-specific things like
> Tavor-generated MADs (to recap: when Tavor needs to send a trap to the
> SM, the trap shows up as a receive on the local QP0 with source LID 0;
> this MAD needs to be forwarded to the SM)?
How important is this ? Things seem to run fine without it right now as
far as I can tell.
In any case, I can make this the next item on my list (putting the code
restructure and renaming as well as more SMI work below this in
priority). I should be able to start on this later today or early
tomorrow.
-- Hal
More information about the openib-general mailing list