]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
pidfs: move O_RDWR into pidfs_alloc_file()
authorChristian Brauner <brauner@kernel.org>
Mon, 14 Apr 2025 13:55:05 +0000 (15:55 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 4 Jun 2025 12:46:26 +0000 (14:46 +0200)
commit c57f07b235871c9e5bffaccd458dca2d9a62b164 upstream.

Since all pidfds must be O_RDWR currently enfore that directly in the
file allocation function itself instead of letting callers specify it.

Link: https://lore.kernel.org/20250414-work-coredump-v2-1-685bf231f828@kernel.org
Tested-by: Luca Boccassi <luca.boccassi@gmail.com>
Reviewed-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/pidfs.c

index d64a4cbeb0dafaaa1d4a6947f2243ae5a40042ac..50e69a9e104a60910ab8af06aae073e81f40bb7d 100644 (file)
@@ -888,6 +888,7 @@ struct file *pidfs_alloc_file(struct pid *pid, unsigned int flags)
                return ERR_PTR(-ESRCH);
 
        flags &= ~PIDFD_CLONE;
+       flags |= O_RDWR;
        pidfd_file = dentry_open(&path, flags, current_cred());
        /* Raise PIDFD_THREAD explicitly as do_dentry_open() strips it. */
        if (!IS_ERR(pidfd_file))