Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'pull-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs

Pull vfs fixes from Al Viro:
"A couple of fixes - revert of regression from this cycle and a fix for
erofs failure exit breakage (had been there since way back)"

* tag 'pull-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
erofs: fix handling kern_mount() failure
Revert "get rid of DCACHE_GENOCIDE"

+9 -4
+4 -1
fs/dcache.c
··· 3061 3061 if (d_unhashed(dentry) || !dentry->d_inode) 3062 3062 return D_WALK_SKIP; 3063 3063 3064 - dentry->d_lockref.count--; 3064 + if (!(dentry->d_flags & DCACHE_GENOCIDE)) { 3065 + dentry->d_flags |= DCACHE_GENOCIDE; 3066 + dentry->d_lockref.count--; 3067 + } 3065 3068 } 3066 3069 return D_WALK_CONTINUE; 3067 3070 }
+4 -3
fs/erofs/fscache.c
··· 381 381 goto out; 382 382 383 383 if (!erofs_pseudo_mnt) { 384 - erofs_pseudo_mnt = kern_mount(&erofs_fs_type); 385 - if (IS_ERR(erofs_pseudo_mnt)) { 386 - err = PTR_ERR(erofs_pseudo_mnt); 384 + struct vfsmount *mnt = kern_mount(&erofs_fs_type); 385 + if (IS_ERR(mnt)) { 386 + err = PTR_ERR(mnt); 387 387 goto out; 388 388 } 389 + erofs_pseudo_mnt = mnt; 389 390 } 390 391 391 392 domain->volume = sbi->volume;
+1
include/linux/dcache.h
··· 173 173 #define DCACHE_DONTCACHE BIT(7) /* Purge from memory on final dput() */ 174 174 175 175 #define DCACHE_CANT_MOUNT BIT(8) 176 + #define DCACHE_GENOCIDE BIT(9) 176 177 #define DCACHE_SHRINK_LIST BIT(10) 177 178 178 179 #define DCACHE_OP_WEAK_REVALIDATE BIT(11)