Re: [PATCH] clear PageError bit in msync & fsync

From: Rik van Riel
Date: Tue Nov 09 2010 - 16:24:52 EST


On 11/09/2010 04:21 PM, Zan Lynx wrote:
On 11/9/10 12:33 PM, Rik van Riel wrote:
On 11/09/2010 02:21 PM, Jeff Layton wrote:

This does leave the page in sort of a funky state. The uptodate bit
will still probably be set, but the dirty bit won't be. The page will
be effectively "disconnected" from the backing store until someone
writes to it.

I suppose though that this is the best that can reasonably be done in
this situation however...

I spent a few days looking for alternatives, and indeed I found
nothing better...

Just an off the top of my head crazy idea...

Could you leave the error bit set on the page and treat it as a dirty
bit during a future msync, clearing the error bit at that point.

The general idea would be to leave the error set unless an explicit
write was requested.

The problem with that is that the page will be unreclaimable,
and the VM could get filled with PageError pages and be unable
to make further progress (if the IO path does not come back).

--
All rights reversed
--
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/