On 5/16/25 06:45, Ingo Molnar wrote: > Isn't it the other way around? MAX_PHYS{MEM,ADDR}_BITS are now *always* > dynamic, their value depending on whether LA57 is available and used. MAX_PHYS{MEM,ADDR}_BITS were always intended to be the compile-time maximums on the architecture. They're static on every architecture except x86 and some arm64 configs (who probably copied x86). That's why having them be dynamic broke non-vmemmap sparsemem. But we also seems to have defined MAXMEM to derive from MAX_PHYSMEM_BITS and MAXMEM cascades into a bunch of other stuff, including KASAN. So we can't just make them static again, I guess. The only option would be to make them static when using non-vmemmap sparsemem. But that's new-ish, and probably won't get any testing. I guess there's not much we can do about it.