All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com>
To: Theodore Tso <tytso@mit.edu>
Cc: bugme-daemon@bugzilla.kernel.org, linux-ext4@vger.kernel.org
Subject: Re: [Bug 12579] ext4 filesystem hang
Date: Sat, 14 Feb 2009 15:11:01 +0530	[thread overview]
Message-ID: <20090214094101.GD22585@skywalker> (raw)
In-Reply-To: <20090214084004.GC22585@skywalker>

On Sat, Feb 14, 2009 at 02:10:04PM +0530, Aneesh Kumar K.V wrote:
> On Fri, Feb 13, 2009 at 08:50:18PM -0500, Theodore Tso wrote:
> > > Patch from Aneesh, un-whitespace-mangled.
> > > 
> > > Ted, can you push this out?  Works great.  :) We might want to ask
> > > the other reporter of something similar (next-20090206: deadlock on
> > > ext4) to test it too.  I'll ping him.
> > 
> > Do we completely understand the root cause, in terms of which commit
> > broken the mm/page-writeback.c code we were depending on?  And if so,
> > what of the code in mm/page-writeback.c?  Does anyone else use it?
> > Can anyone sanely use it?
> 
> AFAIU we need the changes even for older kernels. The
> reasoning is, with delayed allocation we cannot allow to retry with lower
> page index in write_cache_pages. We do retry even in older version of
> kernel. What made it so easy to reproduce it on later kernels is that
> we were doing a retry even if nr_to_write was zero. This got fixed on
> mainline by 3a4c6800f31ea8395628af5e7e490270ee5d0585. So with that
> change we are logically back to 2.6.28 state, But still the possibility
> of deadlock remain.
> 

I found commit 31a12666d8f0c22235297e1c1575f82061480029 to be the root
cause. The commit is correct in what it does. Ext4 was dependent on the
wrong behaviour. The relevant change is 

@@ -897,7 +903,6 @@ retry:
                                              min(end - index, (pgoff_t)PAGEVEC_SIZE-1) + 1))) {
                unsigned i;
 
-               scanned = 1;
                for (i = 0; i < nr_pages; i++) {


I think that caused us the retry. That would imply we may not need the
patch I did for 2.6.28. But given that Ext4 was dependent on the wrong
behaviour of write_cache_pages i would suggest we still push the patch
to 2.6.28

-aneesh

  reply	other threads:[~2009-02-14  9:41 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-30  5:03 [Bug 12579] New: ext4 filesystem hang bugme-daemon
2009-02-12 15:24 ` [Bug 12579] " bugme-daemon
2009-02-12 16:36   ` Aneesh Kumar K.V
2009-02-12 17:49     ` Theodore Tso
2009-02-12 16:37 ` bugme-daemon
2009-02-12 16:44 ` bugme-daemon
2009-02-12 18:48 ` bugme-daemon
2009-02-12 18:55 ` bugme-daemon
2009-02-13  0:42 ` bugme-daemon
2009-02-13 11:49   ` Aneesh Kumar K.V
2009-02-13 11:50 ` bugme-daemon
2009-02-13 22:06 ` bugme-daemon
2009-02-14  1:50   ` Theodore Tso
2009-02-14  8:40     ` Aneesh Kumar K.V
2009-02-14  9:41       ` Aneesh Kumar K.V [this message]
2009-02-14  8:06   ` Aneesh Kumar K.V
2009-02-13 22:22 ` bugme-daemon
2009-02-14  2:07 ` bugme-daemon
2009-02-14  3:52 ` bugme-daemon
2009-02-14  8:07 ` bugme-daemon
2009-02-14  8:40 ` bugme-daemon
2009-02-14  9:42 ` bugme-daemon
2009-02-20  2:31 ` bugme-daemon
2009-02-21 17:35 ` bugme-daemon
2010-02-27 18:29 ` bugzilla-daemon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090214094101.GD22585@skywalker \
    --to=aneesh.kumar@linux.vnet.ibm.com \
    --cc=bugme-daemon@bugzilla.kernel.org \
    --cc=linux-ext4@vger.kernel.org \
    --cc=tytso@mit.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.