aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ocfs2/super.c
diff options
context:
space:
mode:
authorSunil Mushran <sunil.mushran@oracle.com>2009-06-19 19:53:17 -0400
committerJoel Becker <joel.becker@oracle.com>2009-06-22 17:24:51 -0400
commit692684e19e317a374c18e70a44d6413e51f71c11 (patch)
treec47da5b21e66f80458fff3da4cda72b8e0644c0f /fs/ocfs2/super.c
parentc3d38840abaa45c1c5a5fabbb8ffc9a0d1a764d1 (diff)
ocfs2: Stop orphan scan as early as possible during umount
Currently if the orphan scan fires a tick before the user issues the umount, the umount will wait for the queued orphan scan tasks to complete. This patch makes the umount stop the orphan scan as early as possible so as to reduce the probability of the queued tasks slowing down the umount. Signed-off-by: Sunil Mushran <sunil.mushran@oracle.com> Signed-off-by: Joel Becker <joel.becker@oracle.com>
Diffstat (limited to 'fs/ocfs2/super.c')
-rw-r--r--fs/ocfs2/super.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c
index d64739b593e9..3e8a68b103ab 100644
--- a/fs/ocfs2/super.c
+++ b/fs/ocfs2/super.c
@@ -1814,14 +1814,15 @@ static void ocfs2_dismount_volume(struct super_block *sb, int mnt_err)
1814 1814
1815 debugfs_remove(osb->osb_ctxt); 1815 debugfs_remove(osb->osb_ctxt);
1816 1816
1817 /* Orphan scan should be stopped as early as possible */
1818 ocfs2_orphan_scan_stop(osb);
1819
1817 ocfs2_disable_quotas(osb); 1820 ocfs2_disable_quotas(osb);
1818 1821
1819 ocfs2_shutdown_local_alloc(osb); 1822 ocfs2_shutdown_local_alloc(osb);
1820 1823
1821 ocfs2_truncate_log_shutdown(osb); 1824 ocfs2_truncate_log_shutdown(osb);
1822 1825
1823 ocfs2_orphan_scan_stop(osb);
1824
1825 /* This will disable recovery and flush any recovery work. */ 1826 /* This will disable recovery and flush any recovery work. */
1826 ocfs2_recovery_exit(osb); 1827 ocfs2_recovery_exit(osb);
1827 1828