On Fri, May 26, 2023 at 03:32:54PM +0100, Matthew Wilcox wrote: > On Fri, May 26, 2023 at 12:55:46AM -0700, Luis Chamberlain wrote: > > The PageHWPoison() call can be converted over to the respective folio > > call is_folio_hwpoison(). This introduces no functional changes. > > Yes, it very much does! > > > @@ -4548,7 +4548,7 @@ struct page *shmem_read_mapping_page_gfp(struct address_space *mapping, > > return &folio->page; > > > > page = folio_file_page(folio, index); > > - if (PageHWPoison(page)) { > > + if (is_folio_hwpoison(folio)) { > > folio_put(folio); > > Imagine you have an order-9 folio and one of the pages in it gets > HWPoison. Before, you can read the other 511 pages in the folio. But before we didn't use high order folios for reads on tmpfs? But I get the idea. > After your patch, you can't read any of them. You've effectively > increased the blast radius of any hwerror, and I don't think that's an > acceptable change. I see, thanks! Will fix if we move forward with this. Luis