]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
ovl: support layers on case-folding capable filesystems
authorAmir Goldstein <amir73il@gmail.com>
Mon, 2 Jun 2025 17:17:02 +0000 (19:17 +0200)
committerChristian Brauner <brauner@kernel.org>
Fri, 18 Jul 2025 09:09:33 +0000 (11:09 +0200)
commit083957f9614a8b2e284dbb3a85c5fec8e2fb26b8
tree90f6b2cc32486611c327a8f39948a628481651f8
parent04060e7860cb2dad21898248f7e7f7575ce44a14
ovl: support layers on case-folding capable filesystems

Case folding is often applied to subtrees and not on an entire
filesystem.

Disallowing layers from filesystems that support case folding is over
limiting.

Replace the rule that case-folding capable are not allowed as layers
with a rule that case folded directories are not allowed in a merged
directory stack.

Should case folding be enabled on an underlying directory while
overlayfs is mounted the outcome is generally undefined.

Specifically in ovl_lookup(), we check the base underlying directory
and fail with -ESTALE and write a warning to kmsg if an underlying
directory case folding is enabled.

Suggested-by: Kent Overstreet <kent.overstreet@linux.dev>
Link: https://lore.kernel.org/linux-fsdevel/20250520051600.1903319-1-kent.overstreet@linux.dev/
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Link: https://lore.kernel.org/20250602171702.1941891-1-amir73il@gmail.com
Reviewed-by: Kent Overstreet <kent.overstreet@linux.dev>
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/overlayfs/namei.c
fs/overlayfs/overlayfs.h
fs/overlayfs/params.c
fs/overlayfs/util.c