xfs
[Top] [All Lists]

[PATCH 4/6] don't call xfs_freesb from xfs_unmountfs

To: xfs@xxxxxxxxxxx
Subject: [PATCH 4/6] don't call xfs_freesb from xfs_unmountfs
From: Christoph Hellwig <hch@xxxxxx>
Date: Sat, 26 Jul 2008 11:57:14 +0200
Sender: xfs-bounce@xxxxxxxxxxx
User-agent: Mutt/1.3.28i
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.


Signed-off-by: Christoph Hellwig <hch@xxxxxx>

Index: linux-2.6-xfs/fs/xfs/linux-2.6/xfs_super.c
===================================================================
--- linux-2.6-xfs.orig/fs/xfs/linux-2.6/xfs_super.c     2008-07-24 
22:57:15.000000000 +0200
+++ linux-2.6-xfs/fs/xfs/linux-2.6/xfs_super.c  2008-07-24 23:00:27.000000000 
+0200
@@ -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
Index: linux-2.6-xfs/fs/xfs/xfs_mount.c
===================================================================
--- linux-2.6-xfs.orig/fs/xfs/xfs_mount.c       2008-07-24 22:58:14.000000000 
+0200
+++ linux-2.6-xfs/fs/xfs/xfs_mount.c    2008-07-24 23:00:27.000000000 +0200
@@ -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.
         */


<Prev in Thread] Current Thread [Next in Thread>
  • [PATCH 4/6] don't call xfs_freesb from xfs_unmountfs, Christoph Hellwig <=