Re: [PATCH 1/5] jbd: strictly check for write errors on data buffers

Andrew Morton
2008-06-05T16:21:21Z

On Thu, 5 Jun 2008 10:29:48 -0400 Theodore Tso <tytso@mit.edu> wrote:

> On Thu, Jun 05, 2008 at 08:33:27PM +0900, Hidehiro Kawai wrote:
> >
> > My patch doesn't change the policy. JBD aborts the journal when
> > it detects I/O error in file data since 2.6.11. Perhaps this patch:
> > http://marc.info/?l=linux-kernel&m=110483888632225
> > I just added missing error checkings.
> >
>
> Looking at the code paths touched by patch you referenced, you are
> correct. And Andrew even signed off on it. :-)
>
> But if someone was only examining the patch, it wasn't obvious that
> the journal was getting aborted when the JBD layer was forcing buffers
> from t_sync_datalist to disk. So I suspect the change went in without
> proper consideration of the net effect. You just called it out
> explicitly in the subject line, which caused Andrew to ask some good
> questions; questions that weren't asked in 2005.

Sigh. An object lesson in the value of good changelogging :(

I guess we need to undo this. And yes, propagating errors into AS_EIO
is the way. I guess that's safe without holding lock_page(), as long
as the bh is pinned.