If the file system has been unmounted or is marked as dead due to server
misbehavior:
- Don't return POLLIN or POLLRDNORM. We shouldn't, since a subsequent read() won't return any data.
- Do return POLLHUP since we'll never again return data on read().
- Don't return POLLOUT. According to poll(2), POLLHUP and POLLOUT should never be returned at the same time.
Don't MFC this change, as there's a small risk of breakage for fuse
servers that depend on the old behavior. Note that libfuse is not
affected; while it does use poll() it doesn't check revents. Nor are
any applications affect that use kqueue, select, or plain blocking
reads.
Reported by: arrowd
MFC after: Never
Sponsored by: ConnectWise