diff options
author | 2024-11-25 15:10:13 +0100 | |
---|---|---|
committer | 2024-12-02 11:25:12 +0100 | |
commit | 7708f3a7d25f5f1e80a5ef6abc3abde00128f88c (patch) | |
tree | 87d47baa4b2d7d88ecdac721410c60f2b92097e2 | |
parent | nfsfh: avoid pointless cred reference count bump (diff) | |
download | wireguard-linux-7708f3a7d25f5f1e80a5ef6abc3abde00128f88c.tar.xz wireguard-linux-7708f3a7d25f5f1e80a5ef6abc3abde00128f88c.zip |
open: avoid pointless cred reference count bump
The code already got rid of the extra reference count from the old
version of override_creds().
Link: https://lore.kernel.org/r/20241125-work-cred-v2-17-68b9d38bb5b2@kernel.org
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Reviewed-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Christian Brauner <brauner@kernel.org>
-rw-r--r-- | fs/open.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/fs/open.c b/fs/open.c index 0a5cd8e74fb9..ffcfef67ac86 100644 --- a/fs/open.c +++ b/fs/open.c @@ -402,7 +402,6 @@ static bool access_need_override_creds(int flags) static const struct cred *access_override_creds(void) { - const struct cred *old_cred; struct cred *override_cred; override_cred = prepare_creds(); @@ -447,13 +446,7 @@ static const struct cred *access_override_creds(void) * freeing. */ override_cred->non_rcu = 1; - - old_cred = override_creds(get_new_cred(override_cred)); - - /* override_cred() gets its own ref */ - put_cred(override_cred); - - return old_cred; + return override_creds(override_cred); } static long do_faccessat(int dfd, const char __user *filename, int mode, int flags) |