From: Sargun Dhillon Date: Thu, 28 Apr 2022 01:54:46 +0000 (-0700) Subject: seccomp: Use FIFO semantics to order notifications X-Git-Tag: microblaze-v5.20~200^2~5 X-Git-Url: http://git.monstr.eu/?a=commitdiff_plain;h=4cbf6f621150e4fca78543067260f68fab0ee328;p=linux-2.6-microblaze.git seccomp: Use FIFO semantics to order notifications Previously, the seccomp notifier used LIFO semantics, where each notification would be added on top of the stack, and notifications were popped off the top of the stack. This could result one process that generates a large number of notifications preventing other notifications from being handled. This patch moves from LIFO (stack) semantics to FIFO (queue semantics). Signed-off-by: Sargun Dhillon Reviewed-by: Christian Brauner (Microsoft) Signed-off-by: Kees Cook Link: https://lore.kernel.org/r/20220428015447.13661-1-sargun@sargun.me --- diff --git a/kernel/seccomp.c b/kernel/seccomp.c index b5ac87f6dbd4..3caa0fe85235 100644 --- a/kernel/seccomp.c +++ b/kernel/seccomp.c @@ -1100,7 +1100,7 @@ static int seccomp_do_user_notification(int this_syscall, n.data = sd; n.id = seccomp_next_notify_id(match); init_completion(&n.ready); - list_add(&n.list, &match->notif->notifications); + list_add_tail(&n.list, &match->notif->notifications); INIT_LIST_HEAD(&n.addfd); up(&match->notif->request);