summaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_sync.c
diff options
context:
space:
mode:
authorChristoph Hellwig2012-04-23 07:58:33 +0200
committerBen Myers2012-05-14 23:20:26 +0200
commit1c30462542bac8abffb4823638b6b1659c1cfcf5 (patch)
treeb86f1fc14eb0f41e224833128ecc81163227d044 /fs/xfs/xfs_sync.c
parentxfs: remove log item from AIL in xfs_iflush after a shutdown (diff)
downloadkernel-qcow2-linux-1c30462542bac8abffb4823638b6b1659c1cfcf5.tar.gz
kernel-qcow2-linux-1c30462542bac8abffb4823638b6b1659c1cfcf5.tar.xz
kernel-qcow2-linux-1c30462542bac8abffb4823638b6b1659c1cfcf5.zip
xfs: allow assigning the tail lsn with the AIL lock held
Provide a variant of xlog_assign_tail_lsn that has the AIL lock already held. By doing so we do an additional atomic_read + atomic_set under the lock, which comes down to two instructions. Switch xfs_trans_ail_update_bulk and xfs_trans_ail_delete_bulk to the new version to reduce the number of lock roundtrips, and prepare for a new addition that would require a third lock roundtrip in xfs_trans_ail_delete_bulk. This addition is also the reason for slightly rearranging the conditionals and relying on xfs_log_space_wake for checking that the filesystem has been shut down internally. Signed-off-by: Christoph Hellwig <hch@lst.de> 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_sync.c')
0 files changed, 0 insertions, 0 deletions