|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] Fix x86_64 smp boot:
# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID 7155eafc858adc2bb3581cc69793a26fe1bec224
# Parent eea0e77b768350bd98038dd7260af2ce86b51c36
Fix x86_64 smp boot:
The local_setup_timer prototype was bad. The call from start
secondary() to it was calling with out the CPU parameter. Eventually the
CPU parameter received by the local_setup_timer is bogus (big negative
number). With such a big cpu number the per_cpu macro was trying to
access totally wrong memory location (per cpu data offset for big -ve no
cpu) causing the unhandled page fault. Because the dom0 was panicking
the error information on the serial console was also not going through,
giving just clueless hang. With hyper call based debug statement I
could find out what was going wrong in the dom0.
Signed-Off-By: Nitin A Kamble <nitin.a.kamble@xxxxxxxxx>
diff -r eea0e77b7683 -r 7155eafc858a
linux-2.6-xen-sparse/arch/xen/x86_64/kernel/smpboot.c
--- a/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/smpboot.c Tue Oct 18
10:04:48 2005
+++ b/linux-2.6-xen-sparse/arch/xen/x86_64/kernel/smpboot.c Tue Oct 18
10:07:55 2005
@@ -445,7 +445,7 @@
}
#ifdef CONFIG_XEN
-extern void local_setup_timer(void);
+extern void local_setup_timer(unsigned int cpu);
#endif
/*
@@ -478,7 +478,7 @@
enable_APIC_timer();
#else
- local_setup_timer();
+ local_setup_timer(smp_processor_id());
smp_intr_init();
local_irq_enable();
#endif
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-changelog] Fix x86_64 smp boot:,
Xen patchbot -unstable <=
|
|
|
|
|