# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID eb3d2c32a3b4de71b2eebfd0af0955dd35241c93
# Parent 2049467adee349ad576e8afee5de77e23d8928d8
[LINUX] Rename hw_resend_irq to allow it to be defined seperately per arch.
Signed-off-by Kevin Tian <kevin.tian@xxxxxxxxx>
---
linux-2.6-xen-sparse/drivers/xen/core/evtchn.c | 2 -
linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hw_irq.h | 6 ++++-
linux-2.6-xen-sparse/include/asm-ia64/hw_irq.h | 11 ++++++----
linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/hw_irq.h | 6 ++++-
4 files changed, 18 insertions(+), 7 deletions(-)
diff -r 2049467adee3 -r eb3d2c32a3b4
linux-2.6-xen-sparse/drivers/xen/core/evtchn.c
--- a/linux-2.6-xen-sparse/drivers/xen/core/evtchn.c Wed Jun 07 14:21:49
2006 +0100
+++ b/linux-2.6-xen-sparse/drivers/xen/core/evtchn.c Wed Jun 07 14:38:36
2006 +0100
@@ -678,7 +678,7 @@ static struct hw_interrupt_type pirq_typ
set_affinity_irq
};
-void hw_resend_irq(struct hw_interrupt_type *h, unsigned int i)
+void resend_irq_on_evtchn(struct hw_interrupt_type *h, unsigned int i)
{
int evtchn = evtchn_from_irq(i);
shared_info_t *s = HYPERVISOR_shared_info;
diff -r 2049467adee3 -r eb3d2c32a3b4
linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hw_irq.h
--- a/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hw_irq.h Wed Jun
07 14:21:49 2006 +0100
+++ b/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hw_irq.h Wed Jun
07 14:38:36 2006 +0100
@@ -68,6 +68,10 @@ extern atomic_t irq_mis_count;
#define IO_APIC_IRQ(x) (((x) >= 16) || ((1<<(x)) & io_apic_irqs))
-extern void hw_resend_irq(struct hw_interrupt_type *h, unsigned int i);
+extern void resend_irq_on_evtchn(struct hw_interrupt_type *h, unsigned int i);
+static inline void hw_resend_irq(struct hw_interrupt_type *h, unsigned int i)
+{
+ resend_irq_on_evtchn(h, i);
+}
#endif /* _ASM_HW_IRQ_H */
diff -r 2049467adee3 -r eb3d2c32a3b4
linux-2.6-xen-sparse/include/asm-ia64/hw_irq.h
--- a/linux-2.6-xen-sparse/include/asm-ia64/hw_irq.h Wed Jun 07 14:21:49
2006 +0100
+++ b/linux-2.6-xen-sparse/include/asm-ia64/hw_irq.h Wed Jun 07 14:38:36
2006 +0100
@@ -90,15 +90,18 @@ extern void ia64_send_ipi (int cpu, int
extern void ia64_send_ipi (int cpu, int vector, int delivery_mode, int
redirect);
extern void register_percpu_irq (ia64_vector vec, struct irqaction *action);
-#ifndef CONFIG_XEN
static inline void
hw_resend_irq (struct hw_interrupt_type *h, unsigned int vector)
{
+#ifdef CONFIG_XEN
+ extern void resend_irq_on_evtchn(struct hw_interrupt_type *h,
+ unsigned int i);
+ if (is_running_on_xen())
+ resend_irq_on_evtchn(h, vector);
+ else
+#endif /* CONFIG_XEN */
platform_send_ipi(smp_processor_id(), vector, IA64_IPI_DM_INT, 0);
}
-#else
-extern void hw_resend_irq(struct hw_interrupt_type *h, unsigned int i);
-#endif /* CONFIG_XEN */
/*
* Default implementations for the irq-descriptor API:
diff -r 2049467adee3 -r eb3d2c32a3b4
linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/hw_irq.h
--- a/linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/hw_irq.h Wed Jun
07 14:21:49 2006 +0100
+++ b/linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/hw_irq.h Wed Jun
07 14:38:36 2006 +0100
@@ -132,7 +132,11 @@ __asm__( \
"push $" #nr "-256 ; " \
"jmp common_interrupt");
-extern void hw_resend_irq(struct hw_interrupt_type *h, unsigned int i);
+extern void resend_irq_on_evtchn(struct hw_interrupt_type *h, unsigned int i);
+static inline void hw_resend_irq(struct hw_interrupt_type *h, unsigned int i)
+{
+ resend_irq_on_evtchn(h, i);
+}
#define platform_legacy_irq(irq) ((irq) < 16)
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|