Довольно краткое описание, похоже что высокоприоритетные данные могут быть считаны полностью в неблокирующем режиме. В некоторых источниках еще указывают, что возможно даже, что данных в дескрипторе даже может и не быть, но маска состояния всеравно может быть возвращена с этим флагом.
POLLERR 0x0008 /* Error condition */ - что делать с этой ошибкой ? По ней надо закрыть сокет? И будет ли при ее возниконовении что-то в errno или в SO_ERROR на уровне SOL_SOCKET? Т.е. как можно узнать что именно случилось?
POLLHUP 0x0010 /* Hung up */ - здесь как я понимаю сокет закрылся? Т.е. я делаю то же самое и все?
POLLNVAL 0x0020 /* Invalid request: fd not open */ - то же самое ^ ?