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).