Author: pjd
Date: Thu Sep 17 14:58:21 2009
New Revision: 197287
URL: http://svn.freebsd.org/changeset/base/197287

Log:
  Purge namecache for the file system being rolled back, so it doesn't point at
  invalid vnodes after the rollback resulting in EIO errors when trying to 
access
  files which are in the namecache.
  
  Reported by:  des
  MFC after:    3 days

Modified:
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c     Thu Sep 
17 14:52:15 2009        (r197286)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c     Thu Sep 
17 14:58:21 2009        (r197287)
@@ -2354,6 +2354,9 @@ 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);
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to