summaryrefslogtreecommitdiff
path: root/fs/fsopen.c
diff options
context:
space:
mode:
authorChristian Brauner <brauner@kernel.org>2025-02-10 13:38:59 +0100
committerChristian Brauner <brauner@kernel.org>2025-02-12 10:02:10 +0100
commit0ff053b98a0f039e52c2bd8d0cb38f2831edfaf5 (patch)
tree2f2a5fd968924846c8c05746512abed23ae15ff2 /fs/fsopen.c
parent2cc0b7fd4bb0cd7f98fe75758e4c619f74873bd9 (diff)
fs: support O_PATH fds with FSCONFIG_SET_FD
Let FSCONFIG_SET_FD handle O_PATH file descriptors. This is particularly useful in the context of overlayfs where layers can be specified via file descriptors instead of paths. But userspace must currently use non-O_PATH file desriptors which is often pointless especially if the file descriptors have been created via open_tree(OPEN_TREE_CLONE). Link: https://lore.kernel.org/r/20250210-work-overlayfs-v2-1-ed2a949b674b@kernel.org Fixes: a08557d19ef41 ("ovl: specify layers via file descriptors") Reviewed-by: Amir Goldstein <amir73il@gmail.com> Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'fs/fsopen.c')
-rw-r--r--fs/fsopen.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/fsopen.c b/fs/fsopen.c
index 094a7f510edf..1aaf4cb2afb2 100644
--- a/fs/fsopen.c
+++ b/fs/fsopen.c
@@ -453,7 +453,7 @@ SYSCALL_DEFINE5(fsconfig,
case FSCONFIG_SET_FD:
param.type = fs_value_is_file;
ret = -EBADF;
- param.file = fget(aux);
+ param.file = fget_raw(aux);
if (!param.file)
goto out_key;
param.dirfd = aux;