Issue #23485: select.epoll.poll() is now retried when interrupted by a signal
diff --git a/Lib/selectors.py b/Lib/selectors.py
index bf48ebf..2a0a44c 100644
--- a/Lib/selectors.py
+++ b/Lib/selectors.py
@@ -423,11 +423,9 @@
# FD is registered.
max_ev = max(len(self._fd_to_key), 1)
+ fd_event_list = self._epoll.poll(timeout, max_ev)
+
ready = []
- try:
- fd_event_list = self._epoll.poll(timeout, max_ev)
- except InterruptedError:
- return ready
for fd, event in fd_event_list:
events = 0
if event & ~select.EPOLLIN: