bcachefs: BCH_INODE_has_case_insensitive
authorKent Overstreet <kent.overstreet@linux.dev>
Mon, 19 May 2025 14:31:44 +0000 (10:31 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Thu, 22 May 2025 00:15:10 +0000 (20:15 -0400)
commit4ba99dde330b2d4b6de65f27ced60e7f0fbc21c2
tree76ce11291f936935d7a025c73f6c6796211cd4cf
parent77eac89c7943a4ed5c9bc42def9b3140d951184f
bcachefs: BCH_INODE_has_case_insensitive

Add a flag for tracking whether a directory has case-insensitive
descendents - so that overlayfs can disallow mounting, even though the
filesystem supports case insensitivity.

This is a new on disk format version, with a (cheap) upgrade to ensure
the flag is correctly set on existing inodes.

Create, rename and fssetxattr are all plumbed to ensure the new flag is
set, and we've got new fsck code that hooks into check_inode(0.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/bcachefs_format.h
fs/bcachefs/fsck.c
fs/bcachefs/inode.c
fs/bcachefs/inode.h
fs/bcachefs/inode_format.h
fs/bcachefs/namei.c
fs/bcachefs/namei.h
fs/bcachefs/sb-downgrade.c