# HG changeset patch
# User Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
# Date 1217210023 -32400
# Node ID c4b12c90de0e72ae0611cb6240d0745c965c417f
# Parent 8a3dc4fdb4785447398e983c22241c38f128663b
[IA64] Support timer vector IPIs in PV code
Add support for IA64_TIMER_VECTOR as a paravirtualized IPI target
Necessary for the latest upstream Linux implementation of
check_sal_cache_flush() 3463a93def55c309f3c0d0a8aaf216be3be42d64
Upstream Linux recently added this change:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3463a93def55c309f3c0d0a8aaf216be3be42d64
Now, for a platform bug check, we issue an IPI for the IA64_TIMER_VECTOR
and wait for it to show up in the IRR. Since a PV kernel doesn't
support a timer IPI, this never happens. The fix is simply to tie this
into xen_send_ipi() for this case. This doesn't actually happen on
2.6.18, but since vendors are backporting changes from upstream, I think
it's good to have this in the reference tree
Signed-off-by: Alex Williamson <alex.williamson@xxxxxx>
---
arch/ia64/kernel/irq_ia64.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff -r 8a3dc4fdb478 -r c4b12c90de0e arch/ia64/kernel/irq_ia64.c
--- a/arch/ia64/kernel/irq_ia64.c Tue Jul 22 11:59:42 2008 +0100
+++ b/arch/ia64/kernel/irq_ia64.c Mon Jul 28 10:53:43 2008 +0900
@@ -534,12 +534,11 @@ xen_platform_send_ipi(int cpu, int vecto
xen_platform_send_ipi(int cpu, int vector, int delivery_mode, int redirect)
{
int irq = -1;
+ extern void xen_send_ipi(int cpu, int vec);
#ifdef CONFIG_SMP
/* TODO: we need to call vcpu_up here */
if (unlikely(vector == ap_wakeup_vector)) {
- extern void xen_send_ipi (int cpu, int vec);
-
/* XXX
* This should be in __cpu_up(cpu) in ia64 smpboot.c
* like x86. But don't want to modify it,
@@ -566,6 +565,9 @@ xen_platform_send_ipi(int cpu, int vecto
case IA64_CPEP_VECTOR:
irq = per_cpu(ipi_to_irq, cpu)[CPEP_VECTOR];
break;
+ case IA64_TIMER_VECTOR:
+ xen_send_ipi(cpu, vector);
+ return;
default:
printk(KERN_WARNING "Unsupported IPI type 0x%x\n",
vector);
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|