[ofw] ofw] [IPoIB] Broken event notification mechanism between HW and IPoIB

Alex Naslednikov xalex at mellanox.co.il
Tue Jan 6 00:46:45 PST 2009


Hello all and Happy New Year!
 
Recently, we found the following problem: When restarting a subnet
manager (say, opensm), IPoIB will be not aware of this. At a fact, IPoIB
doesn't receive "REREGISTER" or "LID CHANGED" events. This can lead to
connectivity problems (like "no ping" etc.). Below is the description:
 
1. SM is in charge to update the appropriate bit in port_info.
2. It's indeed performed and then external SMA receives this infomation
and transfers it to a mlx4_bus.
3. Now, mlx4_bus generates events appropriate event (LID CHANGED), and
his subscriber, mlx4_hca receives it.
4. Now, the information should pass to IBAL and then to IPoIB.
Practically, the event notification mechanism is not implemented for
this case.
That is, information about change in the lead will never leave HW
driver.
 
Our observation and proposed solution:
In order to receive notifications on the "event_handler" function, one
has to call mlnx_register_event_handler which in-turn means that one has
to call register_event_handler. Currently only the one ULP -winverbs is
calling this function.
 
On the other side, the core is being called on the Linux side, and it
dispatches the information to it's users. 
 
In our humble opinion, IBAL is currently missing this functionality. 
We plan to add this mechanism to IBAL in order to have the ULPs aware of
this change. 
The dispatching of this messages will be done by the existing IBAL pnp
mechanism.
 
Thanks,
XaleX
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/ofw/attachments/20090106/285642f1/attachment.html>


More information about the ofw mailing list