summaryrefslogtreecommitdiff
path: root/static/freebsd/man3/rdma_accept.3
diff options
context:
space:
mode:
Diffstat (limited to 'static/freebsd/man3/rdma_accept.3')
-rw-r--r--static/freebsd/man3/rdma_accept.395
1 files changed, 95 insertions, 0 deletions
diff --git a/static/freebsd/man3/rdma_accept.3 b/static/freebsd/man3/rdma_accept.3
new file mode 100644
index 00000000..a146a8d3
--- /dev/null
+++ b/static/freebsd/man3/rdma_accept.3
@@ -0,0 +1,95 @@
+.\" Licensed under the OpenIB.org BSD license (FreeBSD Variant) - See COPYING.md
+.TH "RDMA_ACCEPT" 3 "2014-05-27" "librdmacm" "Librdmacm Programmer's Manual" librdmacm
+.SH NAME
+rdma_accept \- Called to accept a connection request.
+.SH SYNOPSIS
+.B "#include <rdma/rdma_cma.h>"
+.P
+.B "int" rdma_accept
+.BI "(struct rdma_cm_id *" id ","
+.BI "struct rdma_conn_param *" conn_param ");"
+.SH ARGUMENTS
+.IP "id" 12
+Connection identifier associated with the request.
+.IP "conn_param" 12
+Information needed to establish the connection. See CONNECTION PROPERTIES
+below for details.
+.SH "DESCRIPTION"
+Called from the listening side to accept a connection or datagram
+service lookup request.
+.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"
+Unlike the socket accept routine, rdma_accept is not called on a
+listening rdma_cm_id. Instead, after calling rdma_listen, the user
+waits for an RDMA_CM_EVENT_CONNECT_REQUEST event to occur. Connection request
+events give the user a newly created rdma_cm_id, similar to a new
+socket, but the rdma_cm_id is bound to a specific RDMA device.
+rdma_accept is called on the new rdma_cm_id.
+.SH "CONNECTION PROPERTIES"
+The following properties are used to configure the communication and specified
+by the conn_param parameter when accepting a connection or datagram
+communication request. Users should use the rdma_conn_param values reported
+in the connection request event to determine appropriate values for these
+fields when accepting. Users may reference the rdma_conn_param structure in
+the connection event directly, or can reference their own structure. If the
+rdma_conn_param structure from an event is referenced, the event must not be
+acked until after this call returns.
+.P
+If the conn_param parameter is NULL, the values reported in the connection
+request event are used, adjusted down based on local hardware restrictions.
+.IP private_data
+References a user-controlled data buffer. The contents of the buffer are
+copied and transparently passed to the remote side as part of the
+communication request. May be NULL if private_data is not required.
+.IP private_data_len
+Specifies the size of the user-controlled data buffer. Note that the actual
+amount of data transferred to the remote side is transport dependent and may
+be larger than that requested.
+.IP responder_resources
+The maximum number of outstanding RDMA read and atomic operations that the
+local side will accept from the remote side. Applies only to RDMA_PS_TCP.
+This value must be less than or equal to the local RDMA device attribute
+max_qp_rd_atom, but preferably greater than or equal to the responder_resources
+value reported in the connect request event.
+.IP initiator_depth
+The maximum number of outstanding RDMA read and atomic operations that the
+local side will have to the remote side. Applies only to RDMA_PS_TCP.
+This value must be less than or equal to the local RDMA device attribute
+max_qp_init_rd_atom and the initiator_depth value reported in the connect
+request event.
+.IP flow_control
+Specifies if hardware flow control is available. This value is exchanged
+with the remote peer and is not used to configure the QP. Applies only to
+RDMA_PS_TCP.
+.IP retry_count
+This value is ignored.
+.IP rnr_retry_count
+The maximum number of times that a send operation from the remote peer
+should be retried on a connection after receiving a receiver not ready (RNR)
+error. RNR errors are generated when a send request arrives before a buffer
+has been posted to receive the incoming data. Applies only to RDMA_PS_TCP.
+.IP srq
+Specifies if the QP associated with the connection is using a shared receive
+queue. This field is ignored by the library if a QP has been created on the
+rdma_cm_id. Applies only to RDMA_PS_TCP.
+.IP qp_num
+Specifies the QP number associated with the connection. This field is ignored
+by the library if a QP has been created on the rdma_cm_id.
+.SH "INFINIBAND SPECIFIC"
+In addition to the connection properties defined above, InfiniBand QPs are
+configured with minimum RNR NAK timer and local ACK timeout values. The
+minimum RNR NAK timer value is set to 0, for a delay of 655 ms.
+The local ACK timeout is calculated based on the packet lifetime and local
+HCA ACK delay. The packet lifetime is determined by the InfiniBand Subnet
+Administrator and is part of the route (path record) information obtained
+by the active side of the connection. The HCA ACK delay is a property of
+the locally used HCA.
+.P
+The RNR retry count is a 3-bit value.
+.P
+The length of the private data provided by the user is limited to 196 bytes
+for RDMA_PS_TCP, or 136 bytes for RDMA_PS_UDP.
+.SH "SEE ALSO"
+rdma_listen(3), rdma_reject(3), rdma_get_cm_event(3)