diff options
-rw-r--r-- | sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c | 6 | ||||
-rw-r--r-- | sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c | 3 |
2 files changed, 3 insertions, 6 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c index 9977a37..080643a 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c @@ -2354,9 +2354,6 @@ zfs_ioc_rollback(zfs_cmd_t *zc) if (error == 0) { int resume_err; -#ifdef FREEBSD_NAMECACHE - cache_purgevfs(zfsvfs->z_vfs); -#endif ASSERT(strcmp(osname, zc->zc_name) == 0); error = dmu_objset_rollback(os); resume_err = zfs_resume_fs(zfsvfs, osname, mode); @@ -2543,9 +2540,6 @@ zfs_ioc_recv(zfs_cmd_t *zc) if (error == 0) { int resume_err; -#ifdef FREEBSD_NAMECACHE - cache_purgevfs(zfsvfs->z_vfs); -#endif error = dmu_recv_end(&drc); resume_err = zfs_resume_fs(zfsvfs, osname, mode); error = error ? error : resume_err; diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c index 185d84b..e3e12dd 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c @@ -898,6 +898,9 @@ zfsvfs_teardown(zfsvfs_t *zfsvfs, boolean_t unmounting) * 'z_parent' is self referential for non-snapshots. */ (void) dnlc_purge_vfsp(zfsvfs->z_parent->z_vfs, 0); +#ifdef FREEBSD_NAMECACHE + cache_purgevfs(zfsvfs->z_parent->z_vfs); +#endif } /* |