On Wed, 22 Oct 2008, Nick Piggin wrote: > Invalidate I guess is covered now (I don't exactly like the solution, > but it's what we have for now). Truncate hmm, I thought that still > clears PageUptodate, but it doesn't seem to either? Right. Linus's reasons for this change: "But I'd really like to get that PG_uptodate bit just fixed - both wrt writeout errors and wrt truncate/holepunch. We had some similar issues wrt ext3 (?) inode buffers, where removing the uptodate bit actually ended up being a mistake." My thoughts are: a) clearing both PG_uptodate *and* page->mapping is redundant b) the page contents do not actually change in either the whole-page truncate or the invalidate case, so the up-to-date state shouldn't change either. > Maybe we can use !PageUptodate, with care, for read errors. It might > actually be a bit preferable in the sense that PageError can just be > used for write errors only. That's fine by me, some filesystems do set PageError even on read, but it doesn't matter, since they obviously won't set PageUptodate in that case. Miklos -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html