[PATCH v6 0/9] Support negative dentries on case-insensitive ext4 and f2fs

Gabriel Krisman Bertazi
2023-08-16T05:09:16Z

Hi,

This is v6 of the negative dentry on case-insensitive directories.
Thanks Eric for the review of the last iteration. This version
drops the patch to expose the helper to check casefolding directories,
since it is not necessary in ecryptfs and it might be going away. It
also addresses some documentation details, fix a build bot error and
simplifies the commit messages. See the changelog in each patch for
more details.

Thanks,

---

Gabriel Krisman Bertazi (9):
ecryptfs: Reject casefold directory inodes
9p: Split ->weak_revalidate from ->revalidate
fs: Expose name under lookup to d_revalidate hooks
fs: Add DCACHE_CASEFOLDED_NAME flag
libfs: Validate negative dentries in case-insensitive directories
libfs: Chain encryption checks after case-insensitive revalidation
libfs: Merge encrypted_ci_dentry_ops and ci_dentry_ops
ext4: Enable negative dentries on case-insensitive lookup
f2fs: Enable negative dentries on case-insensitive lookup

Documentation/filesystems/locking.rst | 3 +-
Documentation/filesystems/vfs.rst | 11 ++-
fs/9p/vfs_dentry.c | 11 ++-
fs/afs/dir.c | 6 +-
fs/afs/dynroot.c | 4 +-
fs/ceph/dir.c | 3 +-
fs/coda/dir.c | 3 +-
fs/crypto/fname.c | 3 +-
fs/dcache.c | 8 ++
fs/ecryptfs/dentry.c | 5 +-
fs/ecryptfs/inode.c | 8 ++
fs/exfat/namei.c | 3 +-
fs/ext4/namei.c | 35 +--------
fs/f2fs/namei.c | 25 +-----
fs/fat/namei_vfat.c | 6 +-
fs/fuse/dir.c | 3 +-
fs/gfs2/dentry.c | 3 +-
fs/hfs/sysdep.c | 3 +-
fs/jfs/namei.c | 3 +-
fs/kernfs/dir.c | 3 +-
fs/libfs.c | 107 ++++++++++++++++++--------
fs/namei.c | 18 +++--
fs/nfs/dir.c | 9 ++-
fs/ocfs2/dcache.c | 4 +-
fs/orangefs/dcache.c | 3 +-
fs/overlayfs/super.c | 20 +++--
fs/proc/base.c | 6 +-
fs/proc/fd.c | 3 +-
fs/proc/generic.c | 6 +-
fs/proc/proc_sysctl.c | 3 +-
fs/reiserfs/xattr.c | 3 +-
fs/smb/client/dir.c | 3 +-
fs/vboxsf/dir.c | 4 +-
include/linux/dcache.h | 10 ++-
include/linux/fscrypt.h | 4 +-
35 files changed, 216 insertions(+), 136 deletions(-)

--
2.41.0