Re: 2.6.5-rc1-mm2 and direct_read_under and wb

From: Chris Mason
Date: Mon Mar 22 2004 - 13:27:10 EST


On Mon, 2004-03-22 at 13:23, Chris Mason wrote:
> On Mon, 2004-03-22 at 13:10, Daniel McNeil wrote:
> > Andrew and Chris,
> >
> > I re-ran the direct_read_under tests over the weekend on ext3 with
> > the attached wb_rwsema patch and ran without errors.
> >
> > It looks like the same thing as before -- async writebacks are causing
> > the sync writebacks to miss pages.
> >
> > Thoughts?
>
> It does seem clear that's what is happening, but the part I don't
> understand is exactly where they are racing.

Wait, maybe I do see it.

In __block_write_full_page, if the buffers are locked by ll_rw_block and
under io, they are clean. The page is only redirtied in this case
because the buffers are clean.

So we set_page_writeback and nr_underway == 0. Then, in the if
(nr_underway == 0) code, we clear page writeback even though the buffers
are still locked and under io.

-chris


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/