If the device tree has been allocated memory and it will
be in the memblock reserved space.Obviously it is in a
valid memory declaration and will be mapped by the kernel.

Signed-off-by: Youlin Song <syl.l...@gmail.com>
---
 arch/powerpc/kernel/prom.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/powerpc/kernel/prom.c b/arch/powerpc/kernel/prom.c
index 9a4797d1d40d..ef5f93e7d7f2 100644
--- a/arch/powerpc/kernel/prom.c
+++ b/arch/powerpc/kernel/prom.c
@@ -121,7 +121,7 @@ static void __init move_device_tree(void)
        size = fdt_totalsize(initial_boot_params);
 
        if ((memory_limit && (start + size) > PHYSICAL_START + memory_limit) ||
-           !memblock_is_memory(start + size - 1) ||
+           (!memblock_is_memory(start + size - 1) && 
!memblock_is_reserved(start + size - 1)) ||
            overlaps_crashkernel(start, size) || overlaps_initrd(start, size)) {
                p = memblock_alloc_raw(size, PAGE_SIZE);
                if (!p)
-- 
2.25.1

Reply via email to