[XFS] Remove xfs_iflush_all and clean up xfs_finish_reclaim_all()
xfs_iflush_all() walks the m_inodes list to find inodes that need reclaiming. We already have such a list - the m_del_inodes list. Replace xfs_iflush_all() with a call to xfs_finish_reclaim_all() and clean up xfs_finish_reclaim_all() to handle the different flush modes now needed. Originally based on a patch from Christoph Hellwig. Version 3 o rediff against new linux-2.6/xfs_sync.c code Version 2 o revert xfs_syncsub() inode reclaim behaviour back to original code o xfs_quiesce_fs() should use XFS_IFLUSH_DELWRI_ELSE_ASYNC, not XFS_IFLUSH_ASYNC, to prevent change of behaviour. SGI-PV: 988139 SGI-Modid: xfs-linux-melb:xfs-kern:32284a Signed-off-by: David Chinner <david@fromorbit.com> Signed-off-by: Lachlan McIlroy <lachlan@sgi.com> Signed-off-by: Christoph Hellwig <hch@infradead.org>
This commit is contained in:
parent
a167b17e89
commit
75c68f411b
6 changed files with 22 additions and 64 deletions
|
@ -504,7 +504,7 @@ xfs_syncsub(
|
|||
|
||||
if (flags & (SYNC_ATTR|SYNC_DELWRI)) {
|
||||
if (flags & SYNC_BDFLUSH)
|
||||
xfs_finish_reclaim_all(mp, 1);
|
||||
xfs_finish_reclaim_all(mp, 1, XFS_IFLUSH_DELWRI_ELSE_ASYNC);
|
||||
else
|
||||
error = xfs_sync_inodes(mp, flags, bypassed);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue