diff options
| author | Christian Brauner <brauner@kernel.org> | 2025-06-24 10:29:08 +0200 |
|---|---|---|
| committer | Christian Brauner <brauner@kernel.org> | 2025-06-24 15:45:37 +0200 |
| commit | 1c5484395f9f8b7bf0702f34aa3406353e45d7ec (patch) | |
| tree | b2b41f8941c04e3e3a3c5e5d0f945d3409e263bc | |
| parent | pidfs: add pidfs_root_path() helper (diff) | |
| download | linux-1c5484395f9f8b7bf0702f34aa3406353e45d7ec.tar.gz linux-1c5484395f9f8b7bf0702f34aa3406353e45d7ec.zip | |
fhandle: reflow get_path_anchor()
Switch to a more common coding style.
Link: https://lore.kernel.org/20250624-work-pidfs-fhandle-v2-5-d02a04858fe3@kernel.org
Reviewed-by: Jan Kara <jack@suse.cz>
Reviewed-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Christian Brauner <brauner@kernel.org>
| -rw-r--r-- | fs/fhandle.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/fs/fhandle.c b/fs/fhandle.c index d8d32208c621..9ef35f8e8989 100644 --- a/fs/fhandle.c +++ b/fs/fhandle.c @@ -170,21 +170,25 @@ SYSCALL_DEFINE5(name_to_handle_at, int, dfd, const char __user *, name, static int get_path_anchor(int fd, struct path *root) { + if (fd >= 0) { + CLASS(fd, f)(fd); + if (fd_empty(f)) + return -EBADF; + *root = fd_file(f)->f_path; + path_get(root); + return 0; + } + if (fd == AT_FDCWD) { struct fs_struct *fs = current->fs; spin_lock(&fs->lock); *root = fs->pwd; path_get(root); spin_unlock(&fs->lock); - } else { - CLASS(fd, f)(fd); - if (fd_empty(f)) - return -EBADF; - *root = fd_file(f)->f_path; - path_get(root); + return 0; } - return 0; + return -EBADF; } static int vfs_dentry_acceptable(void *context, struct dentry *dentry) |
