On Tue, Feb 16, 2021 at 10:03:51AM -0500, Pavel Tatashin wrote: > Memory hotplug may fail on systems with CONFIG_RANDOMIZE_BASE because the > linear map range is not checked correctly. > > The start physical address that linear map covers can be actually at the > end of the range because of randomization. Check that and if so reduce it > to 0. > > This can be verified on QEMU with setting kaslr-seed to ~0ul: > > memstart_offset_seed = 0xffff > START: __pa(_PAGE_OFFSET(vabits_actual)) = ffff9000c0000000 > END: __pa(PAGE_END - 1) = 1000bfffffff > > Signed-off-by: Pavel Tatashin <pasha.tatashin@xxxxxxxxxx> > Fixes: 58284a901b42 ("arm64/mm: Validate hotplug range before creating linear mapping") > Tested-by: Tyler Hicks <tyhicks@xxxxxxxxxxxxxxxxxxx> > --- > arch/arm64/mm/mmu.c | 21 +++++++++++++++++++-- > 1 file changed, 19 insertions(+), 2 deletions(-) I tried to queue this as a fix, but unfortunately it doesn't apply. Please can you send a v4 based on the arm64 for-next/fixes branch? Thanks, Will