The patch titled Subject: epoll: move eavail next to the list_empty_careful check has been added to the -mm tree. Its filename is epoll-move-eavail-next-to-the-list_empty_careful-check.patch This patch should soon appear at https://ozlabs.org/~akpm/mmots/broken-out/epoll-move-eavail-next-to-the-list_empty_careful-check.patch and later at https://ozlabs.org/~akpm/mmotm/broken-out/epoll-move-eavail-next-to-the-list_empty_careful-check.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Soheil Hassas Yeganeh <soheil@xxxxxxxxxx> Subject: epoll: move eavail next to the list_empty_careful check This is a no-op change and simply to make the code more coherent. Link: https://lkml.kernel.org/r/20201106231635.3528496-5-soheil.kdev@xxxxxxxxx Signed-off-by: Soheil Hassas Yeganeh <soheil@xxxxxxxxxx> Suggested-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> Reviewed-by: Eric Dumazet <edumazet@xxxxxxxxxx> Reviewed-by: Willem de Bruijn <willemb@xxxxxxxxxx> Reviewed-by: Khazhismel Kumykov <khazhy@xxxxxxxxxx> Cc: Guantao Liu <guantaol@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- fs/eventpoll.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) --- a/fs/eventpoll.c~epoll-move-eavail-next-to-the-list_empty_careful-check +++ a/fs/eventpoll.c @@ -1913,6 +1913,7 @@ fetch_events: if (!eavail) timed_out = !schedule_hrtimeout_range(to, slack, HRTIMER_MODE_ABS); + __set_current_state(TASK_RUNNING); /* * We were woken up, thus go and try to harvest some events. @@ -1922,8 +1923,6 @@ fetch_events: eavail = 1; } while (0); - __set_current_state(TASK_RUNNING); - if (!list_empty_careful(&wait.entry)) { write_lock_irq(&ep->lock); /* _ Patches currently in -mm which might be from soheil@xxxxxxxxxx are epoll-check-for-events-when-removing-a-timed-out-thread-from-the-wait-queue.patch epoll-simplify-signal-handling.patch epoll-pull-fatal-signal-checks-into-ep_send_events.patch epoll-move-eavail-next-to-the-list_empty_careful-check.patch epoll-simplify-and-optimize-busy-loop-logic.patch epoll-pull-all-code-between-fetch_events-and-send_event-into-the-loop.patch epoll-replace-gotos-with-a-proper-loop.patch epoll-eliminate-unnecessary-lock-for-zero-timeout.patch