aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/linux-2.6/xfs_sync.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/xfs/linux-2.6/xfs_sync.c')
-rw-r--r--fs/xfs/linux-2.6/xfs_sync.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/fs/xfs/linux-2.6/xfs_sync.c b/fs/xfs/linux-2.6/xfs_sync.c
index bbb40e27840b..22006b5733c4 100644
--- a/fs/xfs/linux-2.6/xfs_sync.c
+++ b/fs/xfs/linux-2.6/xfs_sync.c
@@ -644,6 +644,11 @@ xfs_reclaim_inode(
644 return 0; 644 return 0;
645} 645}
646 646
647/*
648 * We set the inode flag atomically with the radix tree tag.
649 * Once we get tag lookups on the radix tree, this inode flag
650 * can go away.
651 */
647void 652void
648xfs_inode_set_reclaim_tag( 653xfs_inode_set_reclaim_tag(
649 xfs_inode_t *ip) 654 xfs_inode_t *ip)
@@ -655,6 +660,7 @@ xfs_inode_set_reclaim_tag(
655 spin_lock(&ip->i_flags_lock); 660 spin_lock(&ip->i_flags_lock);
656 radix_tree_tag_set(&pag->pag_ici_root, 661 radix_tree_tag_set(&pag->pag_ici_root,
657 XFS_INO_TO_AGINO(mp, ip->i_ino), XFS_ICI_RECLAIM_TAG); 662 XFS_INO_TO_AGINO(mp, ip->i_ino), XFS_ICI_RECLAIM_TAG);
663 __xfs_iflags_set(ip, XFS_IRECLAIMABLE);
658 spin_unlock(&ip->i_flags_lock); 664 spin_unlock(&ip->i_flags_lock);
659 read_unlock(&pag->pag_ici_lock); 665 read_unlock(&pag->pag_ici_lock);
660 xfs_put_perag(mp, pag); 666 xfs_put_perag(mp, pag);