| .\" Licensed under the OpenIB.org BSD license (FreeBSD Variant) - See COPYING.md |
| .TH "RDMA_NOTIFY" 3 "2007-05-15" "librdmacm" "Librdmacm Programmer's Manual" librdmacm |
| .SH NAME |
| rdma_notify \- Notifies the librdmacm of an asynchronous event. |
| .SH SYNOPSIS |
| .B "#include <rdma/rdma_cma.h>" |
| .P |
| .B "int" rdma_notify |
| .BI "(struct rdma_cm_id *" id "," |
| .BI "enum ibv_event_type " event ");" |
| .SH ARGUMENTS |
| .IP "id" 12 |
| RDMA identifier. |
| .IP "event" 12 |
| Asynchronous event. |
| .SH "DESCRIPTION" |
| Used to notify the librdmacm of asynchronous events that have occurred |
| on a QP associated with the rdma_cm_id. |
| .SH "RETURN VALUE" |
| Returns 0 on success, or -1 on error. If an error occurs, errno will be |
| set to indicate the failure reason. If errno is set to EISCONN |
| (transport endpoint is already connected), this indicates that the |
| the underlying communication manager established the connection before |
| the call to rdma_notify could be processed. In this case, the error may |
| safely be ignored. |
| .SH "NOTES" |
| Asynchronous events that occur on a QP are reported through the user's |
| device event handler. This routine is used to notify the librdmacm of |
| communication events. In most cases, use of this routine is not |
| necessary, however if connection establishment is done out of band |
| (such as done through Infiniband), it's possible to receive data on a |
| QP that is not yet considered connected. This routine forces the |
| connection into an established state in this case in order to handle |
| the rare situation where the connection never forms on its own. |
| Calling this routine ensures the delivery of the RDMA_CM_EVENT_ESTABLISHED |
| event to the application. |
| Events that should be reported to the CM are: IB_EVENT_COMM_EST. |
| .SH "SEE ALSO" |
| rdma_connect(3), rdma_accept(3), rdma_listen(3) |