xfs
[Top] [All Lists]

Re: XFS hang in xlog_grant_log_space (was Re: VFS scalability git tree)

To: Nick Piggin <npiggin@xxxxxxxxx>
Subject: Re: XFS hang in xlog_grant_log_space (was Re: VFS scalability git tree)
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Tue, 27 Jul 2010 23:30:38 +1000
Cc: xfs@xxxxxxxxxxx
In-reply-to: <20100727113626.GA2884@amd>
References: <20100722190100.GA22269@amd> <20100723135514.GJ32635@dastard> <20100727070538.GA2893@amd> <20100727080632.GA4958@amd> <20100727113626.GA2884@amd>
User-agent: Mutt/1.5.20 (2009-06-14)
On Tue, Jul 27, 2010 at 09:36:26PM +1000, Nick Piggin wrote:
> On Tue, Jul 27, 2010 at 06:06:32PM +1000, Nick Piggin wrote:
> On this same system, same setup (vanilla kernel with sha given below),
> I have now twice reproduced a complete hang in XFS. I can give more
> information, test patches or options etc if required.
> 
> setup.sh looks like this:
> #!/bin/bash
> modprobe rd rd_size=$[2*1024*1024]
> dd if=/dev/zero of=/dev/ram0 bs=4K
> mkfs.xfs -f -l size=64m -d agcount=16 /dev/ram0
> mount -o delaylog,logbsize=262144,nobarrier /dev/ram0 mnt
> 
> The 'dd' is required to ensure rd driver does not allocate pages
> during IO (which can lead to out of memory deadlocks). Running just
> involves changing into mnt directory and
> 
> while true
> do
>   sync
>   echo 3 > /proc/sys/vm/drop_caches
>   ../dbench -c ../loadfiles/client.txt -t20 8
>   rm -rf clients
> done
> 
> And wait for it to hang (happend in < 5 minutes here)
....
> Call Trace:
>  [<ffffffff812361f8>] xlog_grant_log_space+0x158/0x3d0

It's waiting on log space to be freed up. Either there's an
accounting problem (possible), or you've got an xfslogd/xfsaild
spinning and not making progress competing log IOs or pushing the
tail of the log. I'll see if I can reproduce it.

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx

<Prev in Thread] Current Thread [Next in Thread>