On Tue, 30 Aug 2005, Roland Dreier wrote:

>     Thomas> kDAPL does this!  :-)
> 
> Does what?  As far as I can tell kDAPL just ignores hotplug and
> routing and hopes the problems go away ;)
> 
> I do see some racy uses of atomic variables in kDAPL, but they don't
> seem to protect against anything really.
> 

AFAICT none of there verbs clients in the tree (cache, CM, MAD, ping,  
SA client, uMAD, uVERBS, IPoIB, kDAPL, SDP, or SRP) synchronize their
verbs calls with the hotplug removal callback.

For example when SRP's srp_add_one() function is called, I don't see a 
synchronization primitive setup to do this. Suppose for example that a 
thread was in SRP's CM callback handler, srp_cm_handler(), just before 
the call to ib_modify_qp() on line 713 when the device removal 
callback, srp_remove_one(), is called. Currently, the SRP code will 
still call ib_modify_qp() even though the device has been removed.

I see similar problems with the other verbs consumers in the tree.

This is a good indication that handling the hotplug events in ULPs is 
difficult.
_______________________________________________
openib-general mailing list
openib-general@openib.org
http://openib.org/mailman/listinfo/openib-general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to