diff options
author | Rusty Russell <rusty@rustcorp.com.au> | 2009-03-17 17:52:30 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-03-18 04:47:54 -0400 |
commit | 2c74d66624ddbda8101d54d1e184cf9229b378bc (patch) | |
tree | 418c4c5a764b904d63efe3d92c2720ec20d2cf29 /arch/x86/kernel/tlb_uv.c | |
parent | 0ca0f16fd17c5d880dd0abbe03595b0c7c5b3c95 (diff) |
x86, uv: fix cpumask iterator in uv_bau_init()
Impact: fix boot crash on UV systems
Commit 76ba0ecda0de9accea9a91cb6dbde46782110e1c "cpumask: use
cpumask_var_t in uv_flush_tlb_others" used cur_cpu as an iterator;
it was supposed to be zero for the code below it.
Reported-by: Cliff Wickman <cpw@sgi.com>
Original-From: Cliff Wickman <cpw@sgi.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Acked-by: Mike Travis <travis@sgi.com>
Cc: steiner@sgi.com
Cc: <stable@kernel.org>
LKML-Reference: <200903180822.31196.rusty@rustcorp.com.au>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/tlb_uv.c')
-rw-r--r-- | arch/x86/kernel/tlb_uv.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/kernel/tlb_uv.c b/arch/x86/kernel/tlb_uv.c index d038b9c45cf8..79c073247284 100644 --- a/arch/x86/kernel/tlb_uv.c +++ b/arch/x86/kernel/tlb_uv.c | |||
@@ -750,7 +750,7 @@ static int __init uv_bau_init(void) | |||
750 | int node; | 750 | int node; |
751 | int nblades; | 751 | int nblades; |
752 | int last_blade; | 752 | int last_blade; |
753 | int cur_cpu = 0; | 753 | int cur_cpu; |
754 | 754 | ||
755 | if (!is_uv_system()) | 755 | if (!is_uv_system()) |
756 | return 0; | 756 | return 0; |
@@ -760,6 +760,7 @@ static int __init uv_bau_init(void) | |||
760 | uv_mmask = (1UL << uv_hub_info->n_val) - 1; | 760 | uv_mmask = (1UL << uv_hub_info->n_val) - 1; |
761 | nblades = 0; | 761 | nblades = 0; |
762 | last_blade = -1; | 762 | last_blade = -1; |
763 | cur_cpu = 0; | ||
763 | for_each_online_node(node) { | 764 | for_each_online_node(node) { |
764 | blade = uv_node_to_blade_id(node); | 765 | blade = uv_node_to_blade_id(node); |
765 | if (blade == last_blade) | 766 | if (blade == last_blade) |