James> For example when SRP's srp_add_one() function is called, I James> don't see a synchronization primitive setup to do James> this. Suppose for example that a thread was in SRP's CM James> callback handler, srp_cm_handler(), just before the call to James> ib_modify_qp() on line 713 when the device removal James> callback, srp_remove_one(), is called. Currently, the SRP James> code will still call ib_modify_qp() even though the device James> has been removed.
That's a good catch. I'll add a little code to SRP to fix it. I also plan on fixing the user MAD problems later this week. user verbs is definitely broken and and needs to be fixed, although I worked around the worst problems by taking a reference on the low-level driver module so at least it can't be unloaded. I think the SA client is OK, since the ib_unregister_event_handler and ib_unregister_mad_agent calls in the remove method should wait until everything is cleaned up. Similarly I think the MAD module is OK. - R. _______________________________________________ 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