Re: [PATCH] Re: XFS performance oddity

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Nov 24, 2010 at 04:28:23PM +1100, Dave Chinner wrote:
> xfs: push stale, pinned buffers on trylock failures
> 
> From: Dave Chinner <dchinner@xxxxxxxxxx>
> 
> As reported by Nick Piggin, XFS is suffering from long pauses under
> highly concurrent workloads when hosted on ramdisks. The problem is
> that an inode buffer is stuck in the pinned state in memory and as a
> result either the inode buffer or one of the inodes within the
> buffer is stopping the tail of the log from being moved forward.
> 
> The system remains in this state until a periodic log force issued
> by xfssyncd causes the buffer to be unpinned. The main problem is
> that these are stale buffers, and are hence held locked until the
> transaction/checkpoint that marked them state has been committed to
> disk. When the filesystem gets into this state, only the xfssyncd
> can cause the async transactions to be committed to disk and hence
> unpin the inode buffer.
> 
> This problem was encountered when scaling the busy extent list, but
> only the blocking lock interface was fixed to solve the problem.
> Extend the same fix to the buffer trylock operations - if we fail to
> lock a pinned, stale buffer, then force the log immediately so that
> when the next attempt to lock it comes around, it will have been
> unpinned.
> 
> Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>

No more stalls, thanks.

_______________________________________________
xfs mailing list
xfs@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/xfs


[Index of Archives]     [Linux XFS Devel]     [Linux Filesystem Development]     [Filesystem Testing]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux