aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_icache.h
diff options
context:
space:
mode:
authorBrian Foster <bfoster@redhat.com>2012-11-06 09:50:39 -0500
committerBen Myers <bpm@sgi.com>2012-11-08 15:20:38 -0600
commita454f7428ffa03c8e1321124d9074101b7290be6 (patch)
tree8dc1cdfb38dc100f844821e3122b0d4ec017f903 /fs/xfs/xfs_icache.h
parentxfs: add EOFBLOCKS inode tagging/untagging (diff)
downloadlinux-dev-a454f7428ffa03c8e1321124d9074101b7290be6.tar.xz
linux-dev-a454f7428ffa03c8e1321124d9074101b7290be6.zip
xfs: support a tag-based inode_ag_iterator
Genericize xfs_inode_ag_walk() to support an optional radix tree tag and args argument for the execute function. Create a new wrapper called xfs_inode_ag_iterator_tag() that performs a tag based walk of perag's and inodes. Signed-off-by: Brian Foster <bfoster@redhat.com> Reviewed-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Mark Tinguely <tinguely@sgi.com> Signed-off-by: Ben Myers <bpm@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_icache.h')
-rw-r--r--fs/xfs/xfs_icache.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/fs/xfs/xfs_icache.h b/fs/xfs/xfs_icache.h
index db3613075dc6..54c113478dfc 100644
--- a/fs/xfs/xfs_icache.h
+++ b/fs/xfs/xfs_icache.h
@@ -40,7 +40,12 @@ void xfs_inode_clear_eofblocks_tag(struct xfs_inode *ip);
int xfs_sync_inode_grab(struct xfs_inode *ip);
int xfs_inode_ag_iterator(struct xfs_mount *mp,
- int (*execute)(struct xfs_inode *ip, struct xfs_perag *pag, int flags),
- int flags);
+ int (*execute)(struct xfs_inode *ip, struct xfs_perag *pag,
+ int flags, void *args),
+ int flags, void *args);
+int xfs_inode_ag_iterator_tag(struct xfs_mount *mp,
+ int (*execute)(struct xfs_inode *ip, struct xfs_perag *pag,
+ int flags, void *args),
+ int flags, void *args, int tag);
#endif