powerpc: Make logical to real cpu mapping code endian safe
authorAnton Blanchard <anton@samba.org>
Tue, 6 Aug 2013 16:01:32 +0000 (02:01 +1000)
committerBen Hutchings <ben@decadent.org.uk>
Thu, 6 Aug 2015 23:32:16 +0000 (00:32 +0100)
commit ac13282dff13cd0f4da0f0ccb134bc29bfa10255 upstream.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
[jt: fixed up context due to commit 59a53afe70fd530040bdc69581f03d880157f15a
     already being backported.]
Signed-off-by: Jonathan Toppins <jtoppins@cumulusnetworks.com>
Reviewed-by: Andy Gospodarek <gospo@cumulusnetworks.com>
Acked-by: Curt Brune <curt@cumulusnetworks.com>
Acked-by: Roopa Prabhu <roopa@cumulusnetworks.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
arch/powerpc/kernel/setup-common.c

index 82288e9..675cbcf 100644 (file)
@@ -428,7 +428,7 @@ void __init smp_setup_cpu_maps(void)
        DBG("smp_setup_cpu_maps()\n");
 
        while ((dn = of_find_node_by_type(dn, "cpu")) && cpu < nr_cpu_ids) {
-               const int *intserv;
+               const __be32 *intserv;
                int j, len;
 
                DBG("  * %s...\n", dn->full_name);
@@ -448,9 +448,9 @@ void __init smp_setup_cpu_maps(void)
 
                for (j = 0; j < nthreads && cpu < nr_cpu_ids; j++) {
                        DBG("    thread %d -> cpu %d (hard id %d)\n",
-                           j, cpu, intserv[j]);
+                           j, cpu, be32_to_cpu(intserv[j]));
                        set_cpu_present(cpu, of_device_is_available(dn));
-                       set_hard_smp_processor_id(cpu, intserv[j]);
+                       set_hard_smp_processor_id(cpu, be32_to_cpu(intserv[j]));
                        set_cpu_possible(cpu, true);
                        cpu++;
                }