From f541d270dbce375b7bd8cef466bdaf0cff945b45 Mon Sep 17 00:00:00 2001 From: Christoph Hellwig Date: Wed, 29 Aug 2007 11:53:22 +1000 Subject: [XFS] move freeing the mount structure from xfs_mount_free into the callers In the next patch we need to look at the mount structure until just before it's freed, so we need to be able to free it as the very last thing in xfs_unmount. SGI-PV: 969608 SGI-Modid: xfs-linux-melb:xfs-kern:29501a Signed-off-by: Christoph Hellwig Signed-off-by: David Chinner Signed-off-by: Tim Shimmin --- fs/xfs/linux-2.6/xfs_vfs.c | 1 + fs/xfs/xfs_mount.c | 1 - fs/xfs/xfs_vfsops.c | 1 + 3 files changed, 2 insertions(+), 1 deletion(-) (limited to 'fs/xfs') diff --git a/fs/xfs/linux-2.6/xfs_vfs.c b/fs/xfs/linux-2.6/xfs_vfs.c index c5ec272cdf2..6ed7f137a03 100644 --- a/fs/xfs/linux-2.6/xfs_vfs.c +++ b/fs/xfs/linux-2.6/xfs_vfs.c @@ -312,6 +312,7 @@ bhv_remove_all_vfsops( mp = XFS_VFSTOM(vfsp); VFS_REMOVEBHV(vfsp, &mp->m_bhv); xfs_mount_free(mp, 0); + kmem_free(mp, sizeof(xfs_mount_t)); } void diff --git a/fs/xfs/xfs_mount.c b/fs/xfs/xfs_mount.c index 71f25947251..3e948f58ab8 100644 --- a/fs/xfs/xfs_mount.c +++ b/fs/xfs/xfs_mount.c @@ -194,7 +194,6 @@ xfs_mount_free( } xfs_icsb_destroy_counters(mp); - kmem_free(mp, sizeof(xfs_mount_t)); } /* diff --git a/fs/xfs/xfs_vfsops.c b/fs/xfs/xfs_vfsops.c index 3fe64a3a77a..8c0e0227924 100644 --- a/fs/xfs/xfs_vfsops.c +++ b/fs/xfs/xfs_vfsops.c @@ -640,6 +640,7 @@ out: * and free the super block buffer & mount structures. */ xfs_unmountfs(mp, credp); + kmem_free(mp, sizeof(xfs_mount_t)); } return XFS_ERROR(error); -- cgit v1.2.3