diff options
author | Aleksa Sarai <cyphar@cyphar.com> | 2024-07-31 23:10:27 +1000 |
---|---|---|
committer | Christian Brauner <brauner@kernel.org> | 2024-08-19 13:45:03 +0200 |
commit | 6a64c5220c5df235448b846aeff3c0660d4cc83e (patch) | |
tree | 3036e6102f537933ebca567caa9a8eb4d8a9570e | |
parent | 6c203968f5af720ee2f4a8a17734e40aabe7b96b (diff) |
autofs: fix missing fput for FSCONFIG_SET_FD
If you pass an fd using FSCONFIG_SET_FD, autofs_parse_fd() "steals" the
param->file and so the fs_context infrastructure will not do fput() for
us.
Fixes: e6ec453bd0f0 ("autofs: convert autofs to use the new mount api")
Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>
Link: https://lore.kernel.org/r/20240731-fsconfig-fsparam_fd-fixes-v2-1-e7c472224417@cyphar.com
Signed-off-by: Christian Brauner <brauner@kernel.org>
-rw-r--r-- | fs/autofs/inode.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/fs/autofs/inode.c b/fs/autofs/inode.c index cf792d4de4f1..64faa6c51f60 100644 --- a/fs/autofs/inode.c +++ b/fs/autofs/inode.c @@ -172,8 +172,7 @@ static int autofs_parse_fd(struct fs_context *fc, struct autofs_sb_info *sbi, ret = autofs_check_pipe(pipe); if (ret < 0) { errorf(fc, "Invalid/unusable pipe"); - if (param->type != fs_value_is_file) - fput(pipe); + fput(pipe); return -EBADF; } |