[PATCH] arm: Support initrd with address in boot alias region
Florian Fainelli
f.fainelli at gmail.com
Tue Sep 29 13:21:35 EDT 2020
+Rob, Russell,
On 9/29/2020 12:54 AM, Matija Glavinic Pecotic wrote:
> If bootloader passes address of initrd in boot alias region, initrd
> will fail on memblock_is_region_memory as memblock with such address
> doesn't exist.
>
> Issue was observed with kexec which passed initrd address in boot alias
> region, while bootloader will typically pass physical address. Commit
> fe7db7570379 ("of/fdt: Populate phys_initrd_start/phys_initrd_size from FDT")
> uncovered problem by removing virt_to_phys on the initrd physical
> address. __virt_to_phys on our platform coincidentally fixed address.
>
> Fix by trying to correct address in case of invalid physical address.
>
> Signed-off-by: Matija Glavinic Pecotic <matija.glavinic-pecotic.ext at nokia.com>
This should have a Fixes tag:
fe7db7570379 ("of/fdt: Populate phys_initrd_start/phys_initrd_size from
FDT")
I am not familiar enough with how the identity map works, but it seems
to do what you want it to.
--
Florian
More information about the linux-arm-kernel
mailing list