Re: [PATCH RFC 03/14] mm: compare pfns only if the entry is present when inserting pfns/pages

From: David Hildenbrand
Date: Mon Jun 23 2025 - 15:20:18 EST


On 20.06.25 20:24, Pedro Falcato wrote:
On Tue, Jun 17, 2025 at 05:43:34PM +0200, David Hildenbrand wrote:
Doing a pte_pfn() etc. of something that is not a present page table
entry is wrong. Let's check in all relevant cases where we want to
upgrade write permissions when inserting pfns/pages whether the entry
is actually present.

It's not expected to have caused real harm in practice, so this is more a
cleanup than a fix for something that would likely trigger in some
weird circumstances.

Couldn't we e.g have a swap entry's "pfn" accidentally match the one we're
inserting? Isn't that a correctness problem?

In theory yes, in practice I think this will not happen.

... especially because the WARN_ON_ONCE() would already trigger in many other cases before we would find one situation where it doesn't.

That's why I decided against Fixes: and declaring this more a cleanup, because the starts really would have to align ... :)

Thanks!

--
Cheers,

David / dhildenb