um: Fix order of dtb unflatten/early init
authorVincent Whitchurch <vincent.whitchurch@axis.com>
Wed, 19 Jan 2022 09:29:34 +0000 (10:29 +0100)
committerRichard Weinberger <richard@nod.at>
Fri, 11 Mar 2022 09:44:43 +0000 (10:44 +0100)
Scan the tree for reserved memory before unflattening it.  As Rob
Herring said:
| These should be reversed. early_init_fdt_scan_reserved_mem() works on
| the flat tree. Reserved memory needs to be reserved before
| unflatten_device_tree() starts allocating memory. Though I imagine that
| doesn't really matter for UML.

Suggested-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/lkml/YeF%2FVbxo6fAt0WLp@robh.at.kernel.org/
Signed-off-by: Vincent Whitchurch <vincent.whitchurch@axis.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
arch/um/kernel/dtb.c

index ca69d72..484141b 100644 (file)
@@ -25,8 +25,8 @@ void uml_dtb_init(void)
                return;
        }
 
-       unflatten_device_tree();
        early_init_fdt_scan_reserved_mem();
+       unflatten_device_tree();
 }
 
 static int __init uml_dtb_setup(char *line, int *add)