RDMA_REG_MSGS
Section: Librdmacm Programmer's Manual (3)
Updated: 2010-07-19
Page Index
NAME
rdma_reg_msgs - register data buffer(s) for sending or receiving messages.
SYNOPSIS
#include <rdma/rdma_verbs.h>
struct ibv_mr * rdma_reg_msgs
(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 an array of memory buffers used for sending and receiving
messages or for RDMA operations. Memory buffers registered using
rdma_reg_msgs may be posted to an rdma_cm_id using
rdma_post_send or rdma_post_recv, or specified as the target of an RDMA
read operation or the source of an RDMA write request.
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_msgs is used to register an array of data buffers
that will be used send and/or receive messages 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 array
is specified through the addr parameter, and the total size of the array
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_read(3),
rdma_reg_write(3),
ibv_reg_mr(3),
ibv_dereg_mr(3),
rdma_post_send(3),
rdma_post_recv(3),
rdma_post_read(3),
rdma_post_readv(3),
rdma_post_write(3),
rdma_post_writev(3)