[ofa-general] librdmacm feature request

Sean Hefty mshefty at ichips.intel.com
Thu Nov 8 15:50:50 PST 2007


The only idea I've been able to come up with for moving an rdma_cm_id 
between fd's is to perform a two-step process.  (The two steps would be 
done by a single API call.)

1. prepare to modify(old_fd, rdma_cm_id)
    Somehow mark that the rdma_cm_id will migrate to a new fd.
2. commit modify(new_fd, rdma_cm_id)
    Migrates the rdma_cm_id to the new fd and moves the events.

Using two steps provides the kernel code the file context that it needs, 
and should protect against the fd's being closed.  The biggest hurdle to 
this is ensuring that the same user owns both fd's, possibly by 
validating some sort of key between the two steps.  I just haven't 
figured out what works as a key.

- Sean



More information about the general mailing list