[ofa-general] librdmacm feature request

Sean Hefty mshefty at ichips.intel.com
Wed Nov 7 11:30:45 PST 2007


> Hmm, how do you move events?  Keep in mind that there may be an
> arbitrary number of pending events that belong to other cm_ids that
> are queued before the events you want to move.  And you can't really
> do anything too funky with the event channel fd, because you don't
> want to mess up some other thread that might be waiting for events in
> poll() or whatever.

After spending some time looking into this, I'm not seeing an easy way 
to move events between fd's or guarantee that a user has permission to 
transfer a cm_id to a new fd.  The modify requires access to two fd's, 
but only one is available in the write...  Anyone have any ideas?

Assuming that there is a solution for these issues, we already track the 
number of events reported for a given cm_id, in order to handle 
destruction.  We _might_ be able to use this same mechanism to avoid 
races reporting events on the old channel after rdma_modify_channel() 
returned.  (I'm not entirely sure on this; there are several race 
conditions to handle.)

- Sean



More information about the general mailing list