| .\" -*- nroff -*- |
| .\" Licensed under the OpenIB.org BSD license (FreeBSD Variant) - See COPYING.md |
| .\" |
| .TH UMAD_POLL 3 "October 23, 2007" "OpenIB" "OpenIB Programmer's Manual" |
| .SH "NAME" |
| umad_poll \- poll umad |
| .SH "SYNOPSIS" |
| .nf |
| .B #include <infiniband/umad.h> |
| .sp |
| .BI "int umad_poll(int " "portid" ", int " "timeout_ms"); |
| .fi |
| .SH "DESCRIPTION" |
| .B umad_poll() |
| waits up to |
| .I timeout_ms\fR |
| milliseconds for a packet to be received from the port specified by |
| .I portid\fR. |
| Once a packet is ready to be read, the function |
| returns 0. After that the packet can be read using |
| .B umad_recv(). |
| Otherwise, \-ETIMEDOUT is returned. Note that successfully polling a port |
| does not guarantee that the subsequent |
| .B umad_recv() |
| will be non blocking when several threads are using |
| the same port. Instead, use a |
| .I timeout_ms\fR |
| parameter of zero to |
| .B umad_recv() |
| to ensure a non-blocking read. |
| .SH "RETURN VALUE" |
| .B umad_poll() |
| returns 0 on success, and a negative value on error as follows: |
| -EINVAL invalid port handle or agentid |
| -ETIMEDOUT poll operation timed out |
| -EIO poll operation failed |
| .SH "SEE ALSO" |
| .BR umad_recv (3) |
| .SH "AUTHOR" |
| .TP |
| Hal Rosenstock <halr@voltaire.com> |