mirror_zfs/module/os/linux/zfs
Pavel Snajdr 5a6ac4cffc 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 <cyphar@cyphar.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Pavel Snajdr <snajpa@snajpa.net>
Closes #8774 
Closes #9549
2019-11-11 09:34:21 -08:00
..
abd.c OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00
arc_os.c Enable use of DTRACE_PROBE* macros in "spl" module 2019-11-01 13:13:43 -07:00
Makefile.in Factor Linux specific code out of spa_misc.c 2019-10-31 09:52:22 -07:00
mmp_os.c Move linux specific mmp module_param_call handler to platform code 2019-10-16 18:37:31 -07:00
policy.c OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00
qat_compress.c QAT related bug fixes 2019-09-12 13:33:44 -07:00
qat_crypt.c QAT related bug fixes 2019-09-12 13:33:44 -07:00
qat.c QAT related bug fixes 2019-09-12 13:33:44 -07:00
spa_misc_os.c Factor Linux specific code out of spa_misc.c 2019-10-31 09:52:22 -07:00
spa_stats.c Fix strdup conflict on other platforms 2019-10-10 09:47:06 -07:00
trace.c Enable use of DTRACE_PROBE* macros in "spl" module 2019-11-01 13:13:43 -07:00
vdev_disk.c Fix strdup conflict on other platforms 2019-10-10 09:47:06 -07:00
vdev_file.c OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00
zfs_acl.c Move platform specific parts of zfs_znode.h to platform code 2019-11-06 10:54:25 -08:00
zfs_ctldir.c Fix strdup conflict on other platforms 2019-10-10 09:47:06 -07:00
zfs_debug.c Enable use of DTRACE_PROBE* macros in "spl" module 2019-11-01 13:13:43 -07:00
zfs_dir.c OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00
zfs_ioctl_os.c Wrap Linux module macros 2019-11-01 10:41:03 -07:00
zfs_onexit_os.c Make zfsdev_getminor signature cross platform 2019-10-16 18:43:52 -07:00
zfs_sysfs.c OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00
zfs_vfsops.c Remove zpl_revalidate 2019-11-11 09:34:21 -08:00
zfs_vnops.c Prefix struct rangelock 2019-11-01 10:37:33 -07:00
zfs_znode.c Prefix struct rangelock 2019-11-01 10:37:33 -07:00
zio_crypt.c Linux 4.14, 4.19, 5.0+ compat: SIMD save/restore 2019-10-24 10:17:33 -07:00
zio_os.c Enable use of DTRACE_PROBE* macros in "spl" module 2019-11-01 13:13:43 -07:00
zpl_ctldir.c OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00
zpl_export.c OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00
zpl_file.c OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00
zpl_inode.c Remove zpl_revalidate 2019-11-11 09:34:21 -08:00
zpl_super.c OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00
zpl_xattr.c Fix strdup conflict on other platforms 2019-10-10 09:47:06 -07:00
zvol_os.c Prefix struct rangelock 2019-11-01 10:37:33 -07:00