Messages in this thread | | | Subject | Re: 2.6.5-rc1-mm2 and direct_read_under and wb | From | Chris Mason <> | Date | Mon, 22 Mar 2004 13:27:29 -0500 |
| |
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@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |