Skip to contentSkip to conversation

don't call xfs_freesb from xfs_unmountfs

PATCH In review Christoph Hellwig 1 participant 1 message Jul 26, 2008 XFS filesystem

lore
Share & tools
lore
#0 lore raw

PATCH 4/6 don't call xfs_freesb from xfs_unmountfs

xfs_readsb is called before xfs_mount so xfs_freesb should be called after xfs_unmountfs, too. This means it now happens after a few things during the of xfs_unmount which all have nothing to do with the superblock.

fs/xfs/linux-2.6/xfs_super.c +2 -1
Index: linux-2.6-xfs/fs/xfs/linux-2.6/xfs_super.c
===================================================================
@@ -1198,6 +1198,7 @@ xfs_fs_put_super(
 	}
 
 	xfs_unmountfs(mp);
+	xfs_freesb(mp);
 	xfs_icsb_destroy_counters(mp);
 	xfs_close_devices(mp);
 	xfs_qmops_put(mp);
@@ -1682,7 +1683,7 @@ xfs_fs_fill_super(
 	WARN_ON(error);
 
 	xfs_unmountfs(mp);
-	goto out_free_fsname;
+	goto out_free_sb;
 }
 
 STATIC int
fs/xfs/xfs_mount.c +0 -2
Index: linux-2.6-xfs/fs/xfs/xfs_mount.c
===================================================================
@@ -1296,8 +1296,6 @@ xfs_unmountfs(
 	xfs_unmountfs_wait(mp); 		/* wait for async bufs */
 	xfs_log_unmount(mp);			/* Done! No more fs ops. */
 
-	xfs_freesb(mp);
-
 	/*
 	 * All inodes from this mount point should be freed.
 	 */