if client closes a connection prematurely, then epoll (at least in Linux 2.6.16) sends EPOLLERR|EPOLLHUP|EPOLLIN only and writer does not know about the error