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.
Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Fri Oct 10 15:04:08 EST 2008
Workarea: redback.melbourne.sgi.com:/home/lachlan/isms/2.6.x-radix
Inspected by: hch
Author: lachlan
The following file(s) were checked into:
longdrop.melbourne.sgi.com:/isms/linux/2.6.x-xfs-melb
Modid: xfs-linux-melb:xfs-kern:32284a
fs/xfs/xfs_vnodeops.c - 1.776 - changed
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/xfs_vnodeops.c.diff?r1=text&tr1=1.776&r2=text&tr2=1.775&f=h
fs/xfs/xfs_vfsops.c - 1.576 - changed
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/xfs_vfsops.c.diff?r1=text&tr1=1.576&r2=text&tr2=1.575&f=h
fs/xfs/xfs_mount.c - 1.447 - changed
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/xfs_mount.c.diff?r1=text&tr1=1.447&r2=text&tr2=1.446&f=h
fs/xfs/xfs_inode.c - 1.526 - changed
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/xfs_inode.c.diff?r1=text&tr1=1.526&r2=text&tr2=1.525&f=h
fs/xfs/xfs_inode.h - 1.260 - changed
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/xfs_inode.h.diff?r1=text&tr1=1.260&r2=text&tr2=1.259&f=h
fs/xfs/linux-2.6/xfs_sync.c - 1.3 - changed
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/linux-2.6/xfs_sync.c.diff?r1=text&tr1=1.3&r2=text&tr2=1.2&f=h
- Remove xfs_iflush_all and clean up xfs_finish_reclaim_all()
|