]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
pidfs: avoid misleading break
authorChristian Brauner <brauner@kernel.org>
Tue, 24 Feb 2026 11:09:00 +0000 (12:09 +0100)
committerChristian Brauner <brauner@kernel.org>
Tue, 24 Feb 2026 11:09:00 +0000 (12:09 +0100)
The break would only break out of the scoped_guard() loop, not the
switch statement. It still works correct as is ofc but let's avoid the
confusion.

Reported-by: David Lechner <dlechner@baylibre.com>
Link:: https://lore.kernel.org/cd2153f1-098b-463c-bbc1-5c6ca9ef1f12@baylibre.com
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/pidfs.c

index 1e20e36e0ed559b32e948db1e2ecd2852b86f903..21f9f011a957640878baa4fbf66c7f91b7bcabba 100644 (file)
@@ -577,9 +577,8 @@ static long pidfd_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
                        struct user_namespace *user_ns;
 
                        user_ns = task_cred_xxx(task, user_ns);
-                       if (!ns_ref_get(user_ns))
-                               break;
-                       ns_common = to_ns_common(user_ns);
+                       if (ns_ref_get(user_ns))
+                               ns_common = to_ns_common(user_ns);
                }
 #endif
                break;
@@ -589,9 +588,8 @@ static long pidfd_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
                        struct pid_namespace *pid_ns;
 
                        pid_ns = task_active_pid_ns(task);
-                       if (!ns_ref_get(pid_ns))
-                               break;
-                       ns_common = to_ns_common(pid_ns);
+                       if (ns_ref_get(pid_ns))
+                               ns_common = to_ns_common(pid_ns);
                }
 #endif
                break;