Re: [PATCH 2/4] AFS: Add a function to excise a rejected writefrom the pagecache

From: Trond Myklebust
Date: Wed May 30 2007 - 13:39:20 EST


On Wed, 2007-05-30 at 11:35 +0100, David Howells wrote:
> Trond Myklebust <trond.myklebust@xxxxxxxxxx> wrote:
>
> > All I do is to protect new calls to read() and write() with a call to
> > check if the page cache needs invalidating.
>
> What about mmap()? What if someone gets a mapping on a section of file that
> subsequently has a write rejected on it? If you invalidate only on
> read()/write(), what do you do about such a mapping?

Same philosophy: The people who already have the file mapped will
already be working with corrupted data, so there is little point in
bending over backwards to "fix" the problem. Instead we flush out the
page cache using invalidate_inode_pages2() whenever someone tries to
mmap() a new section of the file.

Trond

-
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/