[patch]variable overflow after hunderds round of hotplug CPU

From: Shaohua Li
Date: Wed Jun 01 2005 - 21:50:50 EST


Hi,
I'm doing the cpu hotplug stress test and found a variable ('ready') is
overflow after several hundreds rounds of cpu hotplug. Here is a fix.

Signed-off-by: Shaohua Li<shaohua.li@xxxxxxxxx>

--- a/arch/i386/kernel/head.S 2005-05-26 09:19:44.000000000 +0800
+++ b/arch/i386/kernel/head.S 2005-06-02 10:11:28.447685576 +0800
@@ -299,7 +299,6 @@ is386: movl $2,%ecx # set MP
movl %eax,%cr0

call check_x87
- incb ready
lgdt cpu_gdt_descr
lidt idt_descr
ljmp $(__KERNEL_CS),$1f
@@ -316,8 +315,9 @@ is386: movl $2,%ecx # set MP
lldt %ax
cld # gcc2 wants the direction flag cleared at all times
#ifdef CONFIG_SMP
- movb ready, %cl
- cmpb $1,%cl
+ movb ready, %cl
+ movb $1, ready
+ cmpb $0,%cl
je 1f # the first CPU calls start_kernel
# all other CPUs call initialize_secondary
call initialize_secondary


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/