A couple of fixes - revert of regression from this cycle
and a fix for erofs failure exit breakage (had been there since way back). Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> -----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQQqUNBr3gm4hGXdBJlZ7Krx/gZQ6wUCZdrkZAAKCRBZ7Krx/gZQ 67D8AP0eM68yZvbThA/Hb5iElDh3Aogt1AW/QAu9/alkDVHr+wD+PKqhamC8WXGk b1QZ5AOHQFwzkzdF4738fdbujquBWQE= =Ra0D -----END PGP SIGNATURE----- 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"
This commit is contained in:
commit
9b24349279
@ -3061,7 +3061,10 @@ static enum d_walk_ret d_genocide_kill(void *data, struct dentry *dentry)
|
||||
if (d_unhashed(dentry) || !dentry->d_inode)
|
||||
return D_WALK_SKIP;
|
||||
|
||||
dentry->d_lockref.count--;
|
||||
if (!(dentry->d_flags & DCACHE_GENOCIDE)) {
|
||||
dentry->d_flags |= DCACHE_GENOCIDE;
|
||||
dentry->d_lockref.count--;
|
||||
}
|
||||
}
|
||||
return D_WALK_CONTINUE;
|
||||
}
|
||||
|
@ -381,11 +381,12 @@ static int erofs_fscache_init_domain(struct super_block *sb)
|
||||
goto out;
|
||||
|
||||
if (!erofs_pseudo_mnt) {
|
||||
erofs_pseudo_mnt = kern_mount(&erofs_fs_type);
|
||||
if (IS_ERR(erofs_pseudo_mnt)) {
|
||||
err = PTR_ERR(erofs_pseudo_mnt);
|
||||
struct vfsmount *mnt = kern_mount(&erofs_fs_type);
|
||||
if (IS_ERR(mnt)) {
|
||||
err = PTR_ERR(mnt);
|
||||
goto out;
|
||||
}
|
||||
erofs_pseudo_mnt = mnt;
|
||||
}
|
||||
|
||||
domain->volume = sbi->volume;
|
||||
|
@ -173,6 +173,7 @@ struct dentry_operations {
|
||||
#define DCACHE_DONTCACHE BIT(7) /* Purge from memory on final dput() */
|
||||
|
||||
#define DCACHE_CANT_MOUNT BIT(8)
|
||||
#define DCACHE_GENOCIDE BIT(9)
|
||||
#define DCACHE_SHRINK_LIST BIT(10)
|
||||
|
||||
#define DCACHE_OP_WEAK_REVALIDATE BIT(11)
|
||||
|
Loading…
x
Reference in New Issue
Block a user