[PATCH 3/4] xfs: allow assigning the tail lsn with the AIL lock held

Mark Tinguely tinguely at sgi.com
Wed Mar 21 12:22:17 CDT 2012


On 03/16/12 12:55, Christoph Hellwig wrote:
> 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 at lst.de>
>
> ---
>   fs/xfs/xfs_log.c        |   31 +++++++++++++++++++++++--------
>   fs/xfs/xfs_log.h        |    1 +
>   fs/xfs/xfs_trans_ail.c  |   22 +++++++++++++++-------
>   fs/xfs/xfs_trans_priv.h |    1 +
>   4 files changed, 40 insertions(+), 15 deletions(-)
>
> Index: xfs/fs/xfs/xfs_log.c
> ===================================================================
> --- xfs.orig/fs/xfs/xfs_log.c	2012-03-16 12:44:55.880363918 +0100
> +++ xfs/fs/xfs/xfs_log.c	2012-03-16 12:50:24.040370003 +0100
> @@ -915,27 +915,42 @@ xfs_log_need_covered(xfs_mount_t *mp)
>    * We may be holding the log iclog lock upon entering this routine.
>    */

Looks good.

Reviewed-by: Mark Tinguely <tinguely at sgi.com>



More information about the xfs mailing list