On Wed, Nov 08, 2023 at 01:07:51PM -0800, Andrew Morton wrote:
On Wed, 8 Nov 2023 18:28:05 +0000 "Matthew Wilcox (Oracle)" willy@infradead.org wrote:
Convert vmf->page to a folio as soon as we're going to use it. This fixes a bug if the fault handler returns a tail page with hardware poison; tail pages have an invalid page->index, so we would fail to unmap the page from the page tables. We actually have to unmap the entire folio (or mapping_evict_folio() will
Would we merely fail to unmap or is there a possibility of unmapping some random innocent other page?
How might this bug manifest in userspace, worst case?
I think we might unmap a random other page in this file. But then the next fault on that page will bring it back in, so it's only going to be a tiny performance blip. And we've just found a hwpoisoned page which is going to cause all kinds of other excitement, so I doubt it'll be noticed in the grand scheme of things.
As it's cc:stable I'll pluck this patch out of the rest of the series and shall stage it for 6.7-rcX, via mm-hotfixes-unstable -> mm-hotfixes-stable -> Linus. Unless this bug is a very minor thing?
I think it's minor enough that it can wait for 6.8. Unless anyone disagrees?