svn commit: r197287 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs

Pawel Jakub Dawidek pjd at FreeBSD.org
Thu Sep 17 14:58:22 UTC 2009


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);


More information about the svn-src-all mailing list