aboutsummaryrefslogtreecommitdiffstats
path: root/include/os/linux/zfs/sys/zfs_vfsops.h
diff options
context:
space:
mode:
authorPavel Snajdr <[email protected]>2019-11-11 18:34:21 +0100
committerBrian Behlendorf <[email protected]>2019-11-11 09:34:21 -0800
commit5a6ac4cffcd0255ca6f730bcf356e12891fd18af (patch)
tree7498ba3b34fdca3c211b4b8bb79557eaaf413a40 /include/os/linux/zfs/sys/zfs_vfsops.h
parentf15d6a54575567c6d69b6f1ffc000d2df5a8f206 (diff)
Remove zpl_revalidate
This patch removes the need for zpl_revalidate altogether. There were 3 main reasons why we used d_revalidate: 1. periodic automounted snapshots umount deferral 2. negative dentries created before snapshot rollback 3. stale inodes referenced by dentry cache after snapshot rollback Periodic snapshots deferral solution introduces zfs_exit_fs function, which is called as a part of ZFS_EXIT(zfsvfs_t) macro. Negative dentries and stale inodes are solved by flushing the dcache for the particular dataset on zfs_resume_fs call. This patch also removes now unused HAVE_S_D_OP configure test. Reviewed-by: Aleksa Sarai <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Pavel Snajdr <[email protected]> Closes #8774 Closes #9549
Diffstat (limited to 'include/os/linux/zfs/sys/zfs_vfsops.h')
-rw-r--r--include/os/linux/zfs/sys/zfs_vfsops.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/os/linux/zfs/sys/zfs_vfsops.h b/include/os/linux/zfs/sys/zfs_vfsops.h
index 3a959996f..26e49d7b4 100644
--- a/include/os/linux/zfs/sys/zfs_vfsops.h
+++ b/include/os/linux/zfs/sys/zfs_vfsops.h
@@ -197,6 +197,7 @@ typedef struct zfid_long {
extern int zfs_suspend_fs(zfsvfs_t *zfsvfs);
extern int zfs_resume_fs(zfsvfs_t *zfsvfs, struct dsl_dataset *ds);
extern int zfs_end_fs(zfsvfs_t *zfsvfs, struct dsl_dataset *ds);
+extern void zfs_exit_fs(zfsvfs_t *zfsvfs);
extern int zfs_userspace_one(zfsvfs_t *zfsvfs, zfs_userquota_prop_t type,
const char *domain, uint64_t rid, uint64_t *valuep);
extern int zfs_userspace_many(zfsvfs_t *zfsvfs, zfs_userquota_prop_t type,