On 1/8/07, Sean Hefty <[EMAIL PROTECTED]> wrote: > > I just noticed that once i apply the patch, the last + lines (that is > > pthread_mutex_lock, while loop doing pthread_cond_wait and then > > pthread_mutex_unlock) become part of rdma_leave_multicast which seems to > > me strictly buggy as no one is going to wake up this code. > > The leave must wait until all events have been reported on the multicast > group. > There can be more than one event on a group if an error occurs. See > ucma_complete_mc_event() for where the condition is signaled.
let me see i follow your design: mc->events_completed is incremented in the library when the consumer calls rdma_ack_cm_event() and resp->events_reported is incremeted in the kernel called when the user calls rdma_get_cm_event() ? If this is indeed the case, the design seems fine to me, else it might be problematic eg if it does not support the case where there was multicast error but the user did not consume the associated event and now want to call rdma_leave_multicast(). Or. _______________________________________________ openib-general mailing list [email protected] http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
