Re: [PATCH] ext4: avoid exposure of stale data in ext4_punch_hole() -v2

From: Theodore Ts'o
Date: Thu Feb 20 2014 - 19:21:29 EST


On Fri, Sep 27, 2013 at 06:05:17PM +0200, Jan Kara wrote:
> On Fri 27-09-13 19:54:03, Maxim Patlasov wrote:
> > While handling punch-hole fallocate, it's useless to truncate page cache
> > before removing the range from extent tree (or block map in indirect case)
> > because page cache can be re-populated (by read-ahead or read(2) or mmap-ed
> > read) immediately after truncating page cache, but before updating extent
> > tree (or block map). In that case the user will see stale data even after
> > fallocate is completed.
> >
> > Changed in v2 (Thanks to Jan Kara):
> > - Until the problem of data corruption resulting from pages backed by
> > already freed blocks is fully resolved, the simple thing we can do now
> > is to add another truncation of pagecache after punch hole is done.
> The patch looks good. You can add:
> Reviewed-by: Jan Kara <jack@xxxxxxx>

I was going through old patches, and it looks like this one got
dropped. My apologies.

As far as I can tell, the underlying problem in the VFS/MM layer
hasn't been solved yet (Jan, can you confirm?), so I've queued this
patch for the next merge window.

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