Re: [PATCH v13 4/6] arm64: Move unflatten_device_tree() call earlier.

From: David Daney
Date: Thu Mar 03 2016 - 11:33:52 EST


On 03/03/2016 05:47 AM, Rob Herring wrote:
On Wed, Mar 2, 2016 at 4:56 PM, David Daney <ddaney.cavm@xxxxxxxxx> wrote:
From: David Daney <david.daney@xxxxxxxxxx>

In order to extract NUMA information from the device tree, we need to
have the tree in its unflattened form.

Move the call to unflatten_device_tree() into paging_init(). This
puts it before the call to bootmem_init(), which is where the NUMA
information is extracted.

Can't you just move up unflatten_device_tree in setup_arch rather than
hiding in paging_init?

No.

It must come *after* map_mem() and *before* bootmem_init(), both of which are done within paging_init().

One option would be to split the things in paging_init() into two functions, and then do:

.
.
.
paging_init_first_part();
if (acpi_disabled)
unflatten_device_tree();
paging_init_second_part();
.
.
.


Signed-off-by: David Daney <david.daney@xxxxxxxxxx>
---
arch/arm64/kernel/setup.c | 7 +++----
arch/arm64/mm/mmu.c | 5 +++++
2 files changed, 8 insertions(+), 4 deletions(-)