[XFS] Allow 64 bit machines to avoid the AIL lock during flushes
authorDavid Chinner <david@fromorbit.com>
Thu, 30 Oct 2008 06:39:12 +0000 (17:39 +1100)
committerLachlan McIlroy <lachlan@sgi.com>
Thu, 30 Oct 2008 06:39:12 +0000 (17:39 +1100)
commit7b2e2a31f5c23b5f028af8c895137b4c512cc1c8
treec37aa7117a16ebcd01d0ac2687b944e5dd8a7361
parent5b00f14fbd60d42441f78c0e414a539cbfba5cb9
[XFS] Allow 64 bit machines to avoid the AIL lock during flushes

When copying lsn's from the log item to the inode or dquot flush lsn, we
currently grab the AIL lock. We do this because the LSN is a 64 bit
quantity and it needs to be read atomically. The lock is used to guarantee
atomicity for 32 bit platforms.

Make the LSN copying a small function, and make the function used
conditional on BITS_PER_LONG so that 64 bit machines don't need to take
the AIL lock in these places.

SGI-PV: 988143

SGI-Modid: xfs-linux-melb:xfs-kern:32349a

Signed-off-by: David Chinner <david@fromorbit.com>
Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
Signed-off-by: Christoph Hellwig <hch@infradead.org>
fs/xfs/quota/xfs_dquot.c
fs/xfs/xfs_inode.c
fs/xfs/xfs_trans_priv.h