xfs: move inode shrinker unregister even earlier
authorDave Chinner <david@fromorbit.com>
Mon, 12 Jul 2010 06:40:58 +0000 (06:40 +0000)
committerAlex Elder <aelder@sgi.com>
Mon, 26 Jul 2010 18:16:47 +0000 (13:16 -0500)
I missed Dave Chinner's second revision of this change, and pushed
his first version out to the repository instead.

commit a476c59ebb279d738718edc0e3fb76aab3687114
Author: Dave Chinner <dchinner@redhat.com>

This commit compensates for that by moving a block of code up a bit
further, with a result that matches the the effect of Dave's second
version.

Dave's first version was:
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
Dave's second version was:
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Alex Elder <aelder@sgi.com>
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
fs/xfs/linux-2.6/xfs_super.c

index c734bc6cf32ea2f847877b4c2558da129de063e0..8c4f4476e5c28fa69095e9c612969010fd15c94b 100644 (file)
@@ -1145,6 +1145,11 @@ xfs_fs_put_super(
 {
        struct xfs_mount        *mp = XFS_M(sb);
 
+       /*
+        * Unregister the memory shrinker before we tear down the mount
+        * structure so we don't have memory reclaim racing with us here.
+        */
+       xfs_inode_shrinker_unregister(mp);
        xfs_syncd_stop(mp);
 
        /*
@@ -1156,11 +1161,6 @@ xfs_fs_put_super(
 
        XFS_bflush(mp->m_ddev_targp);
 
-       /*
-        * Unregister the memory shrinker before we tear down the mount
-        * structure so we don't have memory reclaim racing with us here.
-        */
-       xfs_inode_shrinker_unregister(mp);
        xfs_unmountfs(mp);
        xfs_freesb(mp);
        xfs_icsb_destroy_counters(mp);