]> www.infradead.org Git - users/jedix/linux-maple.git/commit
sparc64: Fix cpu_possible_mask if nr_cpus is set
authorAtish Patra <atish.patra@oracle.com>
Thu, 15 Sep 2016 20:54:40 +0000 (14:54 -0600)
committerAllen Pais <allen.pais@oracle.com>
Tue, 8 Nov 2016 10:04:23 +0000 (15:34 +0530)
commitbcb9e2ec9685efe48544faf7dcff323bb3749b05
treee5ca93ec67f1818e5884fb8fd6af967e2eab2f2a
parent87f98c0353a1dbf714f9f61a2a635315b9e08693
sparc64: Fix cpu_possible_mask if nr_cpus is set

Orabug: 23297558

If kernel boot parameter nr_cpus is set, it should define the number
of CPUs that can ever be available in the system i.e.
cpu_possible_mask. setup_nr_cpu_ids() overrides the nr_cpu_ids based
on the cpu_possible_mask during kernel initialization. If
cpu_possible_mask is not set based on the nr_cpus value, earlier part
of the kernel would be initialized using nr_cpus value leading to a
kernel crash.

Set cpu_possible_mask based on nr_cpus value. Thus setup_nr_cpu_ids()
becomes redundant and does not corrupt nr_cpu_ids value.

Signed-off-by: Atish Patra <atish.patra@oracle.com>
Reviewed-by: Bob Picco <bob.picco@oracle.com>
Reviewed-by: Vijay Kumar <vijay.ac.kumar@oracle.com>
(cherry picked from commit f539e5b332d8d969301bc43f076d905569c2b12c)
Signed-off-by: Allen Pais <allen.pais@oracle.com>
arch/sparc/include/asm/smp_64.h
arch/sparc/kernel/setup_64.c
arch/sparc/kernel/smp_64.c