Running locally found EpollSocket::Accept was just blocking forever and never suspending the fiber - looks like FD_CLOEXEC is being set with F_SETFL instead of F_SETFD which is then breaking O_NONBLOCK
@romange this is part of the cause of the deadlock you mentioned (if Accept never releases the fiber the accept loop never finishes so AcceptServer::Stop blocks in the test tear down) - though theres then another issue where shutdown isn't waking up the accept fiber so it still blocks Stop (will look at that separately)
Running locally found
EpollSocket::Accept
was just blocking forever and never suspending the fiber - looks likeFD_CLOEXEC
is being set withF_SETFL
instead ofF_SETFD
which is then breakingO_NONBLOCK
@romange this is part of the cause of the deadlock you mentioned (if
Accept
never releases the fiber the accept loop never finishes soAcceptServer::Stop
blocks in the test tear down) - though theres then another issue whereshutdown
isn't waking up theaccept
fiber so it still blocksStop
(will look at that separately)