poll() system call not returning when the socket is closed locally
we have a multi threaded program on Linux where one thread is waiting on poll() system call with event set to POLLIN, & another thread has closed the same socket fd (which is passed to poll) , but the poll() did not return, is this the expected behavior?
From man page of poll we found that the poll should return POLLNVAL if the socket fd is closed, is my understanding correct or is there any bug in the poll()?
In Solaris we observed that the poll system call is returning with POLLNVAL if the socket is closed.
|