[openib-general] Questions about SMI

Hal Rosenstock
Wed Oct 13 10:39:52 PDT 2004


On Wed, 2004-10-13 at 13:27, Roland Dreier wrote:
>     Hal> int snoop_mad(struct ib_device *ibdev,
>     Hal>               u8 port_num,
>     Hal>               u16 slid,
>     Hal>               struct ib_mad *mad);
> 
> That's fine with me.  How about the return value -- I would suggest 0
> for ignored, non-zero for consumed?

Sounds good.

>   So the MAD layer would do:
> 
>     if (device->snoop_mad(...)) {
>             /* free mad */
>             /* stop processing */
>     }
> 
>     /* otherwise proceed as usual */

Almost. The MAD layer would check for a valid snoop_mad routine first.
Details... details...

>     Hal> Got it: it's any locally generated traps. Do they all show up
>     Hal> on QP0 regardless of the class of the trap ?
> 
> No, I think BM traps arrive on QP1 (although I haven't tested).

OK. The MAD layer will push all MADs (on QPs 0 and 1) to snoop_mad if
provided. 

>     Hal> Is there any easy way to cause one of these
>     Hal> traps to be generated ?
> 
> I think if you send an SMP with bad M_Key it should generate a trap.

Thanks. I'll give that a shot and see if I can generate one.

-- Hal



More information about the openib-general mailing list