d6b92ffa99
kernel APIs. List of sources used: 1) rdma-core was cloned from "https://github.com/linux-rdma/rdma-core.git" Top commit d65138ef93af30b3ea249f3a84aa6a24ba7f8a75 2) OpenSM was cloned from git://git.openfabrics.org/~halr/opensm.git Top commit 85f841cf209f791c89a075048a907020e924528d 3) libibmad was cloned from "git://git.openfabrics.org/~iraweiny/libibmad.git" Tag 1.3.13 with some additional patches from Mellanox. 4) infiniband-diags was cloned from "git://git.openfabrics.org/~iraweiny/infiniband-diags.git" Tag 1.6.7 with some additional patches from Mellanox. Added the required Makefiles for building and installing. Sponsored by: Mellanox Technologies
52 lines
2.0 KiB
Groff
52 lines
2.0 KiB
Groff
.\" Licensed under the OpenIB.org BSD license (FreeBSD Variant) - See COPYING.md
|
|
.TH "RDMA_POST_RECV" 3 "2010-07-19" "librdmacm" "Librdmacm Programmer's Manual" librdmacm
|
|
.SH NAME
|
|
rdma_post_recv \- post a work request to receive an incoming message.
|
|
.SH SYNOPSIS
|
|
.B "#include <rdma/rdma_verbs.h>"
|
|
.P
|
|
.B "int" rdma_post_recv
|
|
.BI "(struct rdma_cm_id *" id ","
|
|
.BI "void *" context ","
|
|
.BI "void *" addr ","
|
|
.BI "size_t " length ","
|
|
.BI "struct ibv_mr *" mr ");"
|
|
.SH ARGUMENTS
|
|
.IP "id" 12
|
|
A reference to a communication identifier where the message buffer
|
|
will be posted.
|
|
.IP "context" 12
|
|
User-defined context associated with the request.
|
|
.IP "addr" 12
|
|
The address of the memory buffer to post.
|
|
.IP "length" 12
|
|
The length of the memory buffer.
|
|
.IP "mr" 12
|
|
A registered memory region associated with the posted buffer.
|
|
.SH "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.
|
|
.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 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 registration.
|
|
The buffer 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_recvv(3), rdma_post_send(3)
|