The Linux SCSI Generic (sg) HOWTO
Prev | Chapter 7. System calls | Next

# 7.4. poll()

poll(struct pollfd *ufds, unsigned int nfds, int timeout). This call can be used to check the state of a sg file descriptor. It will always respond immediately. Typical usages are to periodically poll the state of a sg file descriptor and to determine why a SIG_IO signal was received.

For file descriptors associated with sg devices:

- POLLIN one or more responses is awaiting a read()

- POLLOUT command can be sent to write() without causing an EDOM error (i.e. sufficient space on sg's queues)

- POLLHUP SCSI device has been detached, awaiting cleanup

- POLLERR internal structures are inconsistent

POLLOUT indicates the sg will not block a new write() or SG_IO ioctl(). However it is still possible (but unlikely) that the mid level or an adapter may block (or yield EAGAIN).

Prev | Home | Next
read() | Up | close()