Register a listener to suspend reads rather than actually suspending

This reduces the usage of epoll_ctrl a lot