From e305698e6bc173f81988fa1672e7225ac3c33ef2 Mon Sep 17 00:00:00 2001 From: Bananymous Date: Tue, 3 Jun 2025 10:23:53 +0300 Subject: [PATCH] Kernel: Fix epoll EPOLLHUP and EPOLLERR reporting --- kernel/kernel/Epoll.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/kernel/Epoll.cpp b/kernel/kernel/Epoll.cpp index 99b3f40c..7bab70e5 100644 --- a/kernel/kernel/Epoll.cpp +++ b/kernel/kernel/Epoll.cpp @@ -136,7 +136,7 @@ namespace Kernel auto& listen = listen_it->value; { - uint32_t listen_mask = EPOLLERR | EPOLLHUP; + uint32_t listen_mask = EPOLLHUP | EPOLLERR; for (size_t fd = 0; fd < listen.events.size(); fd++) if (listen.has_fd(fd)) listen_mask |= listen.events[fd].events; @@ -170,7 +170,7 @@ namespace Kernel continue; auto& listen_event = listen.events[fd]; - const auto new_events = listen_event.events & events; + const auto new_events = (listen_event.events | EPOLLHUP | EPOLLERR) & events; if (new_events == 0) continue;