On Fri 02-04-21 15:34:13, Theodore Ts'o wrote: > On Wed, Jan 20, 2021 at 05:06:08PM +0100, Jan Kara wrote: > > > > Amir has reported [1] a that ext4 has a potential issues when reads can race > > with hole punching possibly exposing stale data from freed blocks or even > > corrupting filesystem when stale mapping data gets used for writeout. The > > problem is that during hole punching, new page cache pages can get instantiated > > in a punched range after truncate_inode_pages() has run but before the > > filesystem removes blocks from the file. In principle any filesystem > > implementing hole punching thus needs to implement a mechanism to block > > instantiating page cache pages during hole punching to avoid this race. This is > > further complicated by the fact that there are multiple places that can > > instantiate pages in page cache. We can have regular read(2) or page fault > > doing this but fadvise(2) or madvise(2) can also result in reading in page > > cache pages through force_page_cache_readahead(). > > What's the current status of this patch set? I'm going through > pending patches and it looks like folks don't like Jan's proposed > solution. What are next steps? Note that I did post v2 here: https://lore.kernel.org/linux-fsdevel/20210208163918.7871-1-jack@xxxxxxx/ It didn't get much comments though. I guess I'll rebase the series, include the explanations I've added in my reply to Dave and resend. Honza -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR