Message ID | 1410530416-30200-2-git-send-email-hanjun.guo@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 09/12/2014 09:59 AM, Hanjun Guo wrote: > It always make sense to initialize CPU0's logical map entry from the > hardware values, so move the initialization of cpu_logical_map(0) > before unflatten_device_tree() which is needed by ACPI code later. > > Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org> > --- > arch/arm64/kernel/setup.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c > index edb146d..8f33f72 100644 > --- a/arch/arm64/kernel/setup.c > +++ b/arch/arm64/kernel/setup.c > @@ -393,11 +393,11 @@ void __init setup_arch(char **cmdline_p) > > efi_idmap_init(); > > + cpu_logical_map(0) = read_cpuid_mpidr() & MPIDR_HWID_BITMASK; > unflatten_device_tree(); > > psci_init(); > > - cpu_logical_map(0) = read_cpuid_mpidr() & MPIDR_HWID_BITMASK; > cpu_read_bootcpu_ops(); > #ifdef CONFIG_SMP > smp_init_cpus(); Thanks - this is a good fix to ensure we're always dealing with the masked value of the MPIDR Aff bits that we care about. Jon.
On Fri, Sep 12, 2014 at 09:59:59PM +0800, Hanjun Guo wrote: > It always make sense to initialize CPU0's logical map entry from the > hardware values, so move the initialization of cpu_logical_map(0) > before unflatten_device_tree() which is needed by ACPI code later. > > Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org> Acked-by: Olof Johansson <olof@lixom.net> With or without needs for ACPI, I don't think there's any reason for this code to not go in now. -Olof
On Mon, Sep 15, 2014 at 07:16:32AM +0100, Olof Johansson wrote: > On Fri, Sep 12, 2014 at 09:59:59PM +0800, Hanjun Guo wrote: > > It always make sense to initialize CPU0's logical map entry from the > > hardware values, so move the initialization of cpu_logical_map(0) > > before unflatten_device_tree() which is needed by ACPI code later. > > > > Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org> > > Acked-by: Olof Johansson <olof@lixom.net> > > With or without needs for ACPI, I don't think there's any reason for > this code to not go in now. I can see this being of use to psci_init() where I'd like to check MIGRATE_INFO_TYPE and MIGRATE_INFO_UP_CPU early on for systems with PSCI 0.2+. So moving it at least that early sounds good to me. Acked-by: Mark Rutland <mark.rutland@arm.com> Mark.
diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c index edb146d..8f33f72 100644 --- a/arch/arm64/kernel/setup.c +++ b/arch/arm64/kernel/setup.c @@ -393,11 +393,11 @@ void __init setup_arch(char **cmdline_p) efi_idmap_init(); + cpu_logical_map(0) = read_cpuid_mpidr() & MPIDR_HWID_BITMASK; unflatten_device_tree(); psci_init(); - cpu_logical_map(0) = read_cpuid_mpidr() & MPIDR_HWID_BITMASK; cpu_read_bootcpu_ops(); #ifdef CONFIG_SMP smp_init_cpus();
It always make sense to initialize CPU0's logical map entry from the hardware values, so move the initialization of cpu_logical_map(0) before unflatten_device_tree() which is needed by ACPI code later. Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org> --- arch/arm64/kernel/setup.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)