summaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_inode_item.c
diff options
context:
space:
mode:
authorDave Chinner <dchinner@redhat.com>2010-12-03 17:00:52 +1100
committerDave Chinner <david@fromorbit.com>2010-12-03 17:00:52 +1100
commitc90821a26a8c90ad1e3116393b8a8260ab46bffb (patch)
tree1970fa2af39b277e375c059d0e5654e890c44511 /fs/xfs/xfs_inode_item.c
parente677d0f9548e2245ee3c2977661ca8ca165af188 (diff)
downloadblackbird-op-linux-c90821a26a8c90ad1e3116393b8a8260ab46bffb.tar.gz
blackbird-op-linux-c90821a26a8c90ad1e3116393b8a8260ab46bffb.zip
xfs: consume iodone callback items on buffers as they are processed
To allow buffer iodone callbacks to consume multiple items off the callback list, first we need to convert the xfs_buf_do_callbacks() to consume items and always pull the next item from the head of the list. The means the item list walk is never dependent on knowing the next item on the list and hence allows callbacks to remove items from the list as well. This allows callbacks to do bulk operations by scanning the list for identical callbacks, consuming them all and then processing them in bulk, negating the need for multiple callbacks of that type. Signed-off-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'fs/xfs/xfs_inode_item.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud