aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_log.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/xfs/xfs_log.c')
-rw-r--r--fs/xfs/xfs_log.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/fs/xfs/xfs_log.c b/fs/xfs/xfs_log.c
index 0053bcf2b10a..4ebd0bafc914 100644
--- a/fs/xfs/xfs_log.c
+++ b/fs/xfs/xfs_log.c
@@ -749,9 +749,20 @@ xfs_log_mount_finish(
749 return 0; 749 return 0;
750 } 750 }
751 751
752 /*
753 * During the second phase of log recovery, we need iget and
754 * iput to behave like they do for an active filesystem.
755 * xfs_fs_drop_inode needs to be able to prevent the deletion
756 * of inodes before we're done replaying log items on those
757 * inodes. Turn it off immediately after recovery finishes
758 * so that we don't leak the quota inodes if subsequent mount
759 * activities fail.
760 */
761 mp->m_super->s_flags |= MS_ACTIVE;
752 error = xlog_recover_finish(mp->m_log); 762 error = xlog_recover_finish(mp->m_log);
753 if (!error) 763 if (!error)
754 xfs_log_work_queue(mp); 764 xfs_log_work_queue(mp);
765 mp->m_super->s_flags &= ~MS_ACTIVE;
755 766
756 return error; 767 return error;
757} 768}