[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] [LINUX] Rename hw_resend_irq to allow it to be defined seperately per arch.



# 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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.