diff options
-rw-r--r-- | extras/libmemif/adapter.go | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/extras/libmemif/adapter.go b/extras/libmemif/adapter.go index 0cee589..eb7e209 100644 --- a/extras/libmemif/adapter.go +++ b/extras/libmemif/adapter.go @@ -1157,6 +1157,11 @@ func pollRxQueue(memif *Memif, queueID uint8) { for { _, err := syscall.EpollWait(epFd, event[:], -1) if err != nil { + errno, _ := err.(syscall.Errno) + //EINTR and EAGAIN should not be considered as a fatal error, try again + if errno == syscall.EINTR || errno == syscall.EAGAIN { + continue + } log.WithField("err", err).Error("epoll_wait() failed") return } |