rdma_migrate_id - Move a communication identifier to a different event channel.
#include <rdma/rdma_cma.h>
int rdma_migrate_id (struct rdma_cm_id
*id, struct rdma_event_channel
*channel);
- id
- An existing communication identifier to migrate.
- channel
- The communication channel that events associated with the allocated
rdma_cm_id will be reported on. May be NULL.
Migrates a communication identifier to a different event channel.
Returns 0 on success, or -1 on error. If an error occurs, errno will be set to
indicate the failure reason.
This routine migrates a communication identifier to the specified event channel
and moves any pending events associated with the rdma_cm_id to the new
channel. Users should not poll for events on the rdma_cm_id's current event
channel or invoke other routines on the rdma_cm_id while migrating between
channels. This call will block while there are any unacknowledged events on
the current event channel.
If the channel parameter is NULL, the specified rdma_cm_id will be
placed into synchronous operation mode. All calls on the id will block until
the operation completes.
rdma_cm(7), rdma_create_event_channel(3), rdma_create_id(3),
rdma_get_cm_event(3)