Linux, C. Below issue only happens by using epoll(). If I use select() on server socket, there is no data loss.
=============================
Update: I received
event.events = EPOLLIN | EPOLLET;
You are doing edge triggered polling. Which means your last read is probably not reading all the available data. It stops after reading 64k data, even if there is more data available. But the poll will not trigger again due to the edge trigger. Suggest removing EPOLLET
.