| .\" Licensed under the OpenIB.org BSD license (FreeBSD Variant) - See COPYING.md |
| .TH "RDMA_POST_RECVV" 3 "2010-07-19" "librdmacm" "Librdmacm Programmer's Manual" librdmacm |
| .SH NAME |
| rdma_post_recvv \- post a work request to receive incoming messages. |
| .SH SYNOPSIS |
| .B "#include <rdma/rdma_verbs.h>" |
| .P |
| .B "int" rdma_post_recvv |
| .BI "(struct rdma_cm_id *" id "," |
| .BI "void *" context "," |
| .BI "struct ibv_sge *" sgl "," |
| .BI "int " nsge ");" |
| .SH ARGUMENTS |
| .IP "id" 12 |
| A reference to a communication identifier where the message buffer(s) |
| will be posted. |
| .IP "context" 12 |
| User-defined context associated with the request. |
| .IP "sgl" 12 |
| A scatter-gather list of memory buffers posted as a single request. |
| .IP "nsge" 12 |
| The number of scatter-gather entries in the sgl array. |
| .SH "DESCRIPTION" |
| Posts a single work request to the receive queue of the queue pair associated |
| with the rdma_cm_id. The posted buffers will be queued to receive an |
| incoming message sent by the remote peer. |
| .SH "RETURN VALUE" |
| Returns 0 on success, or -1 on error. If an error occurs, errno will be |
| set to indicate the failure reason. |
| .SH "NOTES" |
| The user is responsible for ensuring that the receive is posted, |
| and the total buffer space is large enough to contain all sent data |
| before the peer posts the corresponding send message. The message buffers |
| must have been registered before being posted, and the buffers must |
| remain registered until the receive completes. |
| .P |
| 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. |
| .P |
| 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. |
| .SH "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_recv(3), rdma_post_send(3) |