Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

rdma_reg_read(3) [debian man page]

RDMA_REG_READ(3)					   Librdmacm Programmer's Manual					  RDMA_REG_READ(3)

NAME
rdma_reg_read - register data buffer(s) for remote RDMA read access. SYNOPSIS
#include <rdma/rdma_verbs.h> struct ibv_mr * rdma_reg_read (struct rdma_cm_id *id, void *addr, size_t length); ARGUMENTS
id A reference to a communication identifier where the message buffer(s) will be used. addr The address of the memory buffer(s) to register. length The total length of the memory to register. DESCRIPTION
Registers a memory buffer that will be accessed by a remote RDMA read operation. Memory buffers registered using rdma_reg_read may be tar- geted in an RDMA read request, allowing the buffer to be specified on the remote side of an RDMA connection as the remote_addr of rdma_post_read, or similar call. RETURN VALUE
Returns a reference to the registered memory region on success, or NULL on error. If an error occurs, errno will be set to indicate the failure reason. NOTES
rdma_reg_read is used to register a data buffer that will be the target of an RDMA read operation on a queue pair associated with an rdma_cm_id. The memory buffer is registered with the proteection domain associated with the idenfier. The start of the data buffer is specified through the addr parameter, and the total size of the buffer is given by length. All data buffers should be registered before being posted as a work request. Users must deregister all registered memory by calling rdma_dereg_mr. SEE ALSO
rdma_cm(7), rdma_create_id(3), rdma_create_ep(3), rdma_reg_msgs(3), rdma_reg_write(3), ibv_reg_mr(3), ibv_dereg_mr(3), rdma_post_read(3) librdmacm 2010-07-19 RDMA_REG_READ(3)

Check Out this Related Man Page

RDMA_POST_RECV(3)					   Librdmacm Programmer's Manual					 RDMA_POST_RECV(3)

NAME
rdma_post_recv - post a work request to receive an incoming message. SYNOPSIS
#include <rdma/rdma_verbs.h> int rdma_post_recv (struct rdma_cm_id *id, void *context, void *addr, size_t length, struct ibv_mr *mr); ARGUMENTS
id A reference to a communication identifier where the message buffer will be posted. context User-defined context associated with the request. addr The address of the memory buffer to post. length The length of the memory buffer. mr A registered memory region associated with the posted buffer. DESCRIPTION
Posts a work request to the receive queue of the queue pair associated with the rdma_cm_id. The posted buffer will be queued to receive an incoming message sent by the remote peer. RETURN VALUE
Returns 0 on success, or -1 on error. If an error occurs, errno will be set to indicate the failure reason. NOTES
The user is responsible for ensuring that a receive buffer is posted and large enough to contain all sent data before the peer posts the corresponding send message. The message buffer must have been registered before being posted, with the mr parameter referencing the regis- tration. The buffer must remain registered until the receive completes. Messages may be posted to an rdma_cm_id only after a queue pair has been associated with it. A queue pair is bound to an rdma_cm_id after calling rdma_create_ep or rdma_create_qp, if the rdma_cm_id is allocated using rdma_create_id. The user-defined context associated with the receive request will be returned to the user through the work completion wr_id, work request identifier, field. SEE ALSO
rdma_cm(7), rdma_create_id(3), rdma_create_ep(3), rdma_create_qp(3), rdma_reg_read(3), ibv_reg_mr(3), ibv_dereg_mr(3), rdma_post_recvv(3), rdma_post_send(3) librdmacm 2010-07-19 RDMA_POST_RECV(3)
Man Page