ia64/xen-unstable

changeset 10332:eb3d2c32a3b4

[LINUX] Rename hw_resend_irq to allow it to be defined seperately per arch.
Signed-off-by Kevin Tian <kevin.tian@intel.com>
author kaf24@firebug.cl.cam.ac.uk
date Wed Jun 07 14:38:36 2006 +0100 (2006-06-07)
parents 2049467adee3
children 1a500cc4fcd5
files linux-2.6-xen-sparse/drivers/xen/core/evtchn.c linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hw_irq.h linux-2.6-xen-sparse/include/asm-ia64/hw_irq.h linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/hw_irq.h
line diff
     1.1 --- a/linux-2.6-xen-sparse/drivers/xen/core/evtchn.c	Wed Jun 07 14:21:49 2006 +0100
     1.2 +++ b/linux-2.6-xen-sparse/drivers/xen/core/evtchn.c	Wed Jun 07 14:38:36 2006 +0100
     1.3 @@ -678,7 +678,7 @@ static struct hw_interrupt_type pirq_typ
     1.4  	set_affinity_irq
     1.5  };
     1.6  
     1.7 -void hw_resend_irq(struct hw_interrupt_type *h, unsigned int i)
     1.8 +void resend_irq_on_evtchn(struct hw_interrupt_type *h, unsigned int i)
     1.9  {
    1.10  	int evtchn = evtchn_from_irq(i);
    1.11  	shared_info_t *s = HYPERVISOR_shared_info;
     2.1 --- a/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hw_irq.h	Wed Jun 07 14:21:49 2006 +0100
     2.2 +++ b/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/hw_irq.h	Wed Jun 07 14:38:36 2006 +0100
     2.3 @@ -68,6 +68,10 @@ extern atomic_t irq_mis_count;
     2.4  
     2.5  #define IO_APIC_IRQ(x) (((x) >= 16) || ((1<<(x)) & io_apic_irqs))
     2.6  
     2.7 -extern void hw_resend_irq(struct hw_interrupt_type *h, unsigned int i);
     2.8 +extern void resend_irq_on_evtchn(struct hw_interrupt_type *h, unsigned int i);
     2.9 +static inline void hw_resend_irq(struct hw_interrupt_type *h, unsigned int i)
    2.10 +{
    2.11 +	resend_irq_on_evtchn(h, i);
    2.12 +}
    2.13  
    2.14  #endif /* _ASM_HW_IRQ_H */
     3.1 --- a/linux-2.6-xen-sparse/include/asm-ia64/hw_irq.h	Wed Jun 07 14:21:49 2006 +0100
     3.2 +++ b/linux-2.6-xen-sparse/include/asm-ia64/hw_irq.h	Wed Jun 07 14:38:36 2006 +0100
     3.3 @@ -90,15 +90,18 @@ extern void free_irq_vector (int vector)
     3.4  extern void ia64_send_ipi (int cpu, int vector, int delivery_mode, int redirect);
     3.5  extern void register_percpu_irq (ia64_vector vec, struct irqaction *action);
     3.6  
     3.7 -#ifndef CONFIG_XEN
     3.8  static inline void
     3.9  hw_resend_irq (struct hw_interrupt_type *h, unsigned int vector)
    3.10  {
    3.11 +#ifdef CONFIG_XEN
    3.12 +	extern void resend_irq_on_evtchn(struct hw_interrupt_type *h,
    3.13 +					 unsigned int i);
    3.14 +	if (is_running_on_xen())
    3.15 +		resend_irq_on_evtchn(h, vector);
    3.16 +	else
    3.17 +#endif /* CONFIG_XEN */
    3.18  	platform_send_ipi(smp_processor_id(), vector, IA64_IPI_DM_INT, 0);
    3.19  }
    3.20 -#else
    3.21 -extern void hw_resend_irq(struct hw_interrupt_type *h, unsigned int i);
    3.22 -#endif /* CONFIG_XEN */
    3.23  
    3.24  /*
    3.25   * Default implementations for the irq-descriptor API:
     4.1 --- a/linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/hw_irq.h	Wed Jun 07 14:21:49 2006 +0100
     4.2 +++ b/linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/hw_irq.h	Wed Jun 07 14:38:36 2006 +0100
     4.3 @@ -132,7 +132,11 @@ asmlinkage void IRQ_NAME(nr); \
     4.4  	"push $" #nr "-256 ; " \
     4.5  	"jmp common_interrupt");
     4.6  
     4.7 -extern void hw_resend_irq(struct hw_interrupt_type *h, unsigned int i);
     4.8 +extern void resend_irq_on_evtchn(struct hw_interrupt_type *h, unsigned int i);
     4.9 +static inline void hw_resend_irq(struct hw_interrupt_type *h, unsigned int i)
    4.10 +{
    4.11 +	resend_irq_on_evtchn(h, i);
    4.12 +}
    4.13  
    4.14  #define platform_legacy_irq(irq)	((irq) < 16)
    4.15