This is a note to let you know that I've just added the patch titled epoll: ep_autoremove_wake_function should use list_del_init_careful to the 5.10-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: epoll-ep_autoremove_wake_function-should-use-list_del_init_careful.patch and it can be found in the queue-5.10 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From 2192bba03d80f829233bfa34506b428f71e531e7 Mon Sep 17 00:00:00 2001 From: Benjamin Segall <bsegall@xxxxxxxxxx> Date: Tue, 30 May 2023 11:32:28 -0700 Subject: epoll: ep_autoremove_wake_function should use list_del_init_careful From: Benjamin Segall <bsegall@xxxxxxxxxx> commit 2192bba03d80f829233bfa34506b428f71e531e7 upstream. autoremove_wake_function uses list_del_init_careful, so should epoll's more aggressive variant. It only doesn't because it was copied from an older wait.c rather than the most recent. [bsegall@xxxxxxxxxx: add comment] Link: https://lkml.kernel.org/r/xm26bki0ulsr.fsf_-_@xxxxxxxxxx Link: https://lkml.kernel.org/r/xm26pm6hvfer.fsf@xxxxxxxxxx Fixes: a16ceb139610 ("epoll: autoremove wakers even more aggressively") Signed-off-by: Ben Segall <bsegall@xxxxxxxxxx> Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx> Cc: Christian Brauner <brauner@xxxxxxxxxx> Cc: <stable@xxxxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- fs/eventpoll.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) --- a/fs/eventpoll.c +++ b/fs/eventpoll.c @@ -1817,7 +1817,11 @@ static int ep_autoremove_wake_function(s { int ret = default_wake_function(wq_entry, mode, sync, key); - list_del_init(&wq_entry->entry); + /* + * Pairs with list_empty_careful in ep_poll, and ensures future loop + * iterations see the cause of this wakeup. + */ + list_del_init_careful(&wq_entry->entry); return ret; } Patches currently in stable-queue which might be from bsegall@xxxxxxxxxx are queue-5.10/epoll-ep_autoremove_wake_function-should-use-list_del_init_careful.patch