[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1290105840-sup-3874@think>
Date: Thu, 18 Nov 2010 13:51:15 -0500
From: Chris Mason <chris.mason@...cle.com>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: Eric Sandeen <sandeen@...hat.com>, Nick Piggin <npiggin@...nel.dk>,
"Ted Ts'o" <tytso@....edu>, Jan Kara <jack@...e.cz>,
linux-fsdevel <linux-fsdevel@...r.kernel.org>,
linux-ext4 <linux-ext4@...r.kernel.org>,
linux-btrfs <linux-btrfs@...r.kernel.org>
Subject: Re: [patch] fix up lock order reversal in writeback
Excerpts from Andrew Morton's message of 2010-11-18 13:36:38 -0500:
> On Thu, 18 Nov 2010 12:04:21 -0600 Eric Sandeen <sandeen@...hat.com> wrote:
>
> > On 11/18/10 11:10 AM, Andrew Morton wrote:
> > > On Thu, 18 Nov 2010 08:55:18 -0600 Eric Sandeen <sandeen@...hat.com> wrote:
> > >
> > >>> Can we just delete writeback_inodes_sb_nr_if_idle() and
> > >>> writeback_inodes_sb_if_idle()? The changelog for 17bd55d037a02 is
> > >>> pretty handwavy - do we know that deleting these things would make a
> > >>> jot of difference?
> > >>
> > >> Really? I thought it was pretty decent ;)
> > >>
> > >> Anyway, xfstests 204, "Test out ENOSPC flushing on small filesystems."
> > >> shows the problem clearly, IIRC. I should have included that in the
> > >> changelog, I suppose, sorry.
> > >
> > > Your email didn't really impart any information :(
> > >
> > > I suppose I could accidentally delete those nasty little functions in a
> > > drivers/parport patch then wait and see if anyone notices.
> > >
> >
> > Um, ok, then, to answer the question directly :
> >
> > No, please don't delete those functions, it will break ENOSPC handling
> > in ext4 as shown by xfstests regression test #204 ...
> >
>
> If those functions "fix" a testcase then it was by sheer luck, and the
> fs's ENOSPC handling is still busted.
>
> For a start writeback_inodes_sb_if_idle() is a no-op if the device
> isn't idle! Secondly, if the device _was_ idle,
> writeback_inodes_sb_if_idle() uses a work handoff to another thread,
> which means that the work might not get executed for another six weeks.
>
> So no, your ENOSPC handling is still busted and I'll be doing you a
> favour when I send that parport patch.
Btrfs uses it with this cool looping construct. It's an innovative
combination of while, 1, schedule_timeout(), and if all goes well, break.
-chris
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists