From: Chris Wright Date: Thu, 11 Aug 2005 23:49:23 +0000 (-0700) Subject: Patch needed bug fix as pointed out by Andi. X-Git-Tag: v2.6.12.6~8 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1874095f0259beca12ea1f93b9e823f68ab3cdfa;p=thirdparty%2Fkernel%2Fstable-queue.git Patch needed bug fix as pointed out by Andi. --- diff --git a/review/x86_64-fix-smpboot-timing-problem.patch b/review/x86_64-fix-smpboot-timing-problem.patch index 1d3da4a2948..bd2382886e0 100644 --- a/review/x86_64-fix-smpboot-timing-problem.patch +++ b/review/x86_64-fix-smpboot-timing-problem.patch @@ -27,11 +27,17 @@ it fixes it for the right reasons. Signed-off-by: "Eric W. Biederman" Signed-off-by: Andi Kleen +Signed-off-by: Chris Wright +--- + arch/x86_64/kernel/smp.c | 65 +++++++++++++++++++++++++++++++++++++++++++ + arch/x86_64/kernel/smpboot.c | 21 +++++++------ + include/asm-x86_64/smp.h | 2 + + 3 files changed, 79 insertions(+), 9 deletions(-) -Index: linux-2.6.12/arch/x86_64/kernel/smp.c +Index: linux-2.6.12.y/arch/x86_64/kernel/smp.c =================================================================== ---- linux-2.6.12.orig/arch/x86_64/kernel/smp.c -+++ linux-2.6.12/arch/x86_64/kernel/smp.c +--- linux-2.6.12.y.orig/arch/x86_64/kernel/smp.c ++++ linux-2.6.12.y/arch/x86_64/kernel/smp.c @@ -284,6 +284,71 @@ struct call_data_struct { static struct call_data_struct * call_data; @@ -104,10 +110,10 @@ Index: linux-2.6.12/arch/x86_64/kernel/smp.c * this function sends a 'generic call function' IPI to all other CPUs * in the system. */ -Index: linux-2.6.12/arch/x86_64/kernel/smpboot.c +Index: linux-2.6.12.y/arch/x86_64/kernel/smpboot.c =================================================================== ---- linux-2.6.12.orig/arch/x86_64/kernel/smpboot.c -+++ linux-2.6.12/arch/x86_64/kernel/smpboot.c +--- linux-2.6.12.y.orig/arch/x86_64/kernel/smpboot.c ++++ linux-2.6.12.y/arch/x86_64/kernel/smpboot.c @@ -202,9 +202,6 @@ static __cpuinit void sync_master(void * { unsigned long flags, i; @@ -161,14 +167,14 @@ Index: linux-2.6.12/arch/x86_64/kernel/smpboot.c - printk(KERN_INFO "CPU %d: Syncing TSC to CPU %u.\n", smp_processor_id(), - boot_cpu_id); - sync_tsc(); -+ sync_tsc(boot_cpu_id); ++ sync_tsc(0); } static __init int notscsync_setup(char *s) -Index: linux-2.6.12/include/asm-x86_64/smp.h +Index: linux-2.6.12.y/include/asm-x86_64/smp.h =================================================================== ---- linux-2.6.12.orig/include/asm-x86_64/smp.h -+++ linux-2.6.12/include/asm-x86_64/smp.h +--- linux-2.6.12.y.orig/include/asm-x86_64/smp.h ++++ linux-2.6.12.y/include/asm-x86_64/smp.h @@ -46,6 +46,8 @@ extern int pic_mode; extern int smp_num_siblings; extern void smp_flush_tlb(void);