> 1) the set_multicast_list net device callback > seems to just kick off another thread to do > the work of registering the multicast group. > the mc_list net_device field is only valid > under the netif_tx_lock, but this lock is not > grabbed by the restart_task. what happens > if the mc_list is modified while in the > restart_task?
Just looking quickly, I see that ipoib_mcast_restart_task() does netif_tx_lock() (right near the top). Isn't this sufficient? > 2) there seem to be 2 threads, the restart_task > which creates queries and the join_task which sends > off the mad requests. why? is there some performance > advantage? it would seem easier to do the registrations > serially in the restart task... I guess it's really that way mainly for historical reasons. I'd be glad to see patches that simplify things (of course making sure that everything still works ;) - R. _______________________________________________ openib-general mailing list [email protected] http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
