On Wed, May 11, 2022 at 10:17 AM Luck, Tony <tony.luck@xxxxxxxxx> wrote: > > > I - just like you - am waiting for Tony to say whether he still needs > > this whole_page() thing. I already suggested removing it so I'm fine > > with this patch. > > IIRC this new patch effectively reverts back to the original behavior that > I implemented back at the dawn of time. I.e. just always mark the whole > page "not present" and don't try to mess with UC mappings to allow > partial (but non-speculative) access to the not-poisoned parts of the > page. > > If that is the case ... then Acked-by: Tony Luck <tony.luck@xxxxxxxxx> > > If I've misunderstood ... then please explain what it is doing. You are correct. The page is always marked not present as far as the page-offlining code is concerned, back to the way it always was. The code in the pmem driver that repairs the page now knows that the page is to be kept "not present" until the poison is cleared and clear_mce_nospec() returns the mapping to typical write-back caching. There is no support for what the UC case previously allowed which was reading the good lines around the one bad line, just handle overwrites to clear poison and restore access.