git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw
[pandora-kernel.git]
/
arch
/
x86
/
kernel
/
genx2apic_uv_x.c
diff --git
a/arch/x86/kernel/genx2apic_uv_x.c
b/arch/x86/kernel/genx2apic_uv_x.c
index
2cfcbde
..
bfa837c
100644
(file)
--- a/
arch/x86/kernel/genx2apic_uv_x.c
+++ b/
arch/x86/kernel/genx2apic_uv_x.c
@@
-222,7
+222,7
@@
static __init void map_low_mmrs(void)
enum map_type {map_wb, map_uc};
enum map_type {map_wb, map_uc};
-static void map_high(char *id, unsigned long base, int shift, enum map_type map_type)
+static
__init
void map_high(char *id, unsigned long base, int shift, enum map_type map_type)
{
unsigned long bytes, paddr;
{
unsigned long bytes, paddr;
@@
-293,7
+293,9
@@
static __init void uv_rtc_init(void)
sn_rtc_cycles_per_second = ticks_per_sec;
}
sn_rtc_cycles_per_second = ticks_per_sec;
}
-static __init void uv_system_init(void)
+static bool uv_system_inited;
+
+void __init uv_system_init(void)
{
union uvh_si_addr_map_config_u m_n_config;
union uvh_node_id_u node_id;
{
union uvh_si_addr_map_config_u m_n_config;
union uvh_node_id_u node_id;
@@
-383,6
+385,7
@@
static __init void uv_system_init(void)
map_mmr_high(max_pnode);
map_config_high(max_pnode);
map_mmioh_high(max_pnode);
map_mmr_high(max_pnode);
map_config_high(max_pnode);
map_mmioh_high(max_pnode);
+ uv_system_inited = true;
}
/*
}
/*
@@
-391,8
+394,7
@@
static __init void uv_system_init(void)
*/
void __cpuinit uv_cpu_init(void)
{
*/
void __cpuinit uv_cpu_init(void)
{
- if (!uv_node_to_blade)
- uv_system_init();
+ BUG_ON(!uv_system_inited);
uv_blade_info[uv_numa_blade_id()].nr_online_cpus++;
uv_blade_info[uv_numa_blade_id()].nr_online_cpus++;