On Wed, Sep 08, 2021 at 02:22:31PM +0300, Mike Rapoport wrote:
kern_addr_valid() wrongly uses pxy_none() rather than pxy_present() because according to 9a14aefc1d28 ("x86: cpa, fix lookup_address") there could be cases when page table entries exist but they are not valid. So a call to kern_addr_valid() for an address in the direct map would oops.
I've stopped digging at 9a14aefc1d28 (which is in v2.6.26) and added the oldest stable we still support (4.4).
I agree that before 4.19 it's more of a theoretical bug, but you know, things happen...
Hmmkay, I guess I should add the gist of that to the commit message so that it is explained why 4.4.
I'm assuming the pxy_present() check is more strict than pxy_none() so that backporting to all stable kernels should not introduce any risks...