xfs
[Top] [All Lists]

Re: [regression] stack overflow in xfs_buf_iodone_callbacks

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: [regression] stack overflow in xfs_buf_iodone_callbacks
From: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Mon, 25 Jun 2012 05:06:58 -0400
Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>, xfs@xxxxxxxxxxx
In-reply-to: <20120622233955.GY19223@dastard>
References: <20120621091803.GB10673@dastard> <20120621163409.GA7897@xxxxxxxxxxxxx> <20120621232414.GD10673@dastard> <20120622164147.GA20617@xxxxxxxxxxxxx> <20120622233955.GY19223@dastard>
User-agent: Mutt/1.5.21 (2010-09-15)
On Sat, Jun 23, 2012 at 09:39:55AM +1000, Dave Chinner wrote:
> Hmmmm. How often do we get real io completion occurring before we
> call _xfs_buf_ioend() here? I can't see that it is common, so this
> is probably fine, but perhaps a few numbers might help here? If it
> is rare as we think it is, then yeah, that would work....

The only case where I can see it ever hapen is when sending tons
of separate I/Os in one go to a reall fast device, e.g. a very
fragmented large directory to superfast battery backed dram device.

And even then I don't think it matters very much - for reads we
generally do not have an b_iodone handler attached, so for these
the change does not make any different.  For delayed writes the
additional context switch also doesn't have a major impact on
performance, so the only thing where we could see a difference
is synchronous writes, of which we don't have a lot left, and
essentially none unless the shrinkers kick in and need to do
synchronous reclaims.

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