aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@infradead.org>2011-10-18 10:23:17 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2011-10-25 07:10:16 +0200
commit838599d118dd286b831ba45ae380c5870ff82fe9 (patch)
tree88b856432dbc7fd574e896b3c2abe9ed668331f2 /fs/xfs
parentf5d5ee3686ab928549370e4e584a2c32ef708a37 (diff)
downloadkernel_samsung_smdk4412-838599d118dd286b831ba45ae380c5870ff82fe9.zip
kernel_samsung_smdk4412-838599d118dd286b831ba45ae380c5870ff82fe9.tar.gz
kernel_samsung_smdk4412-838599d118dd286b831ba45ae380c5870ff82fe9.tar.bz2
xfs: do not update xa_last_pushed_lsn for locked items
commit bc6e588a8971aa74c02e42db4d6e0248679f3738 upstream If an item was locked we should not update xa_last_pushed_lsn and thus skip it when restarting the AIL scan as we need to be able to lock and write it out as soon as possible. Otherwise heavy lock contention might starve AIL pushing too easily, especially given the larger backoff once we moved xa_last_pushed_lsn all the way to the target lsn. Signed-off-by: Christoph Hellwig <hch@lst.de> Reported-by: Stefan Priebe <s.priebe@profihost.ag> Tested-by: Stefan Priebe <s.priebe@profihost.ag> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'fs/xfs')
-rw-r--r--fs/xfs/xfs_trans_ail.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/fs/xfs/xfs_trans_ail.c b/fs/xfs/xfs_trans_ail.c
index 9a69dc0..4b74b88 100644
--- a/fs/xfs/xfs_trans_ail.c
+++ b/fs/xfs/xfs_trans_ail.c
@@ -491,7 +491,6 @@ xfs_ail_worker(
case XFS_ITEM_LOCKED:
XFS_STATS_INC(xs_push_ail_locked);
- ailp->xa_last_pushed_lsn = lsn;
stuck++;
break;