Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[sfrench/cifs-2.6.git] / arch / x86 / xen / events.c
index da1b173547a112d9fcf1d3dcc86d2bfd67b5c5ff..dcf613e17581448926794286ac9c1fad05011857 100644 (file)
@@ -383,7 +383,7 @@ static void unbind_from_irq(unsigned int irq)
 }
 
 int bind_evtchn_to_irqhandler(unsigned int evtchn,
-                             irqreturn_t (*handler)(int, void *),
+                             irq_handler_t handler,
                              unsigned long irqflags,
                              const char *devname, void *dev_id)
 {
@@ -402,7 +402,7 @@ int bind_evtchn_to_irqhandler(unsigned int evtchn,
 EXPORT_SYMBOL_GPL(bind_evtchn_to_irqhandler);
 
 int bind_virq_to_irqhandler(unsigned int virq, unsigned int cpu,
-                           irqreturn_t (*handler)(int, void *),
+                           irq_handler_t handler,
                            unsigned long irqflags, const char *devname, void *dev_id)
 {
        unsigned int irq;
@@ -465,7 +465,7 @@ void xen_send_IPI_one(unsigned int cpu, enum ipi_vector vector)
  * a bitset of words which contain pending event bits.  The second
  * level is a bitset of pending events themselves.
  */
-fastcall void xen_evtchn_do_upcall(struct pt_regs *regs)
+void xen_evtchn_do_upcall(struct pt_regs *regs)
 {
        int cpu = get_cpu();
        struct shared_info *s = HYPERVISOR_shared_info;
@@ -487,7 +487,7 @@ fastcall void xen_evtchn_do_upcall(struct pt_regs *regs)
                        int irq = evtchn_to_irq[port];
 
                        if (irq != -1) {
-                               regs->orig_eax = ~irq;
+                               regs->orig_ax = ~irq;
                                do_IRQ(regs);
                        }
                }