[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <12059477063046-git-send-email-gcosta@redhat.com>
Date: Wed, 19 Mar 2008 14:25:24 -0300
From: Glauber de Oliveira Costa <gcosta@...hat.com>
To: linux-kernel@...r.kernel.org
Cc: akpm@...ux-foundation.org, tglx@...utronix.de, mingo@...e.hu,
ak@...e.de, Glauber Costa <gcosta@...hat.com>
Subject: [PATCH 29/79] [PATCH] fill bios cpu to apicid maps
From: Glauber Costa <gcosta@...hat.com>
We fill the per-cpu (or array) that maps
bios cpu id to apicid in mpparse_32.c, the way x86_64 does
Signed-off-by: Glauber Costa <gcosta@...hat.com>
---
arch/x86/kernel/mpparse_32.c | 11 ++++++++---
1 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/arch/x86/kernel/mpparse_32.c b/arch/x86/kernel/mpparse_32.c
index c6a9789..56fb828 100644
--- a/arch/x86/kernel/mpparse_32.c
+++ b/arch/x86/kernel/mpparse_32.c
@@ -76,8 +76,6 @@ unsigned disabled_cpus __cpuinitdata;
/* Bitmask of physically existing CPUs */
physid_mask_t phys_cpu_present_map;
-u8 bios_cpu_apicid[NR_CPUS] = { [0 ... NR_CPUS-1] = BAD_APICID };
-
/*
* Intel MP BIOS table parsing routines:
*/
@@ -221,7 +219,14 @@ static void __cpuinit MP_processor_info (struct mpc_config_processor *m)
def_to_bigsmp = 1;
}
}
- bios_cpu_apicid[num_processors - 1] = m->mpc_apicid;
+ /* are we being called early in kernel startup? */
+ if (x86_cpu_to_apicid_early_ptr) {
+ u16 *bios_cpu_apicid = x86_bios_cpu_apicid_early_ptr;
+ bios_cpu_apicid[num_processors - 1] = m->mpc_apicid;
+ } else {
+ int cpu = num_processors - 1;
+ per_cpu(x86_bios_cpu_apicid, cpu) = m->mpc_apicid;
+ }
}
static void __init MP_bus_info (struct mpc_config_bus *m)
--
1.5.0.6
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists