Loading arch/ia64/kernel/irq.c +4 −1 Original line number Original line Diff line number Diff line Loading @@ -194,8 +194,11 @@ void fixup_irqs(void) */ */ for (irq=0; irq < NR_IRQS; irq++) { for (irq=0; irq < NR_IRQS; irq++) { if (vectors_in_migration[irq]) { if (vectors_in_migration[irq]) { struct pt_regs *old_regs = set_irq_regs(NULL); vectors_in_migration[irq]=0; vectors_in_migration[irq]=0; __do_IRQ(irq, NULL); __do_IRQ(irq); set_irq_regs(old_regs); } } } } Loading arch/ia64/kernel/irq_ia64.c +5 −2 Original line number Original line Diff line number Diff line Loading @@ -226,6 +226,8 @@ void ia64_process_pending_intr(void) */ */ while (vector != IA64_SPURIOUS_INT_VECTOR) { while (vector != IA64_SPURIOUS_INT_VECTOR) { if (!IS_RESCHEDULE(vector)) { if (!IS_RESCHEDULE(vector)) { struct pt_regs *old_regs = set_irq_regs(NULL); ia64_setreg(_IA64_REG_CR_TPR, vector); ia64_setreg(_IA64_REG_CR_TPR, vector); ia64_srlz_d(); ia64_srlz_d(); Loading @@ -236,7 +238,8 @@ void ia64_process_pending_intr(void) * Probably could shared code. * Probably could shared code. */ */ vectors_in_migration[local_vector_to_irq(vector)]=0; vectors_in_migration[local_vector_to_irq(vector)]=0; __do_IRQ(local_vector_to_irq(vector), NULL); __do_IRQ(local_vector_to_irq(vector)); set_irq_regs(old_regs); /* /* * Disable interrupts and send EOI * Disable interrupts and send EOI Loading @@ -253,7 +256,7 @@ void ia64_process_pending_intr(void) #ifdef CONFIG_SMP #ifdef CONFIG_SMP extern irqreturn_t handle_IPI (int irq, void *dev_id, struct pt_regs *regs); extern irqreturn_t handle_IPI (int irq, void *dev_id); static struct irqaction ipi_irqaction = { static struct irqaction ipi_irqaction = { .handler = handle_IPI, .handler = handle_IPI, Loading arch/ia64/sn/kernel/sn2/timer_interrupt.c +1 −1 Original line number Original line Diff line number Diff line Loading @@ -36,7 +36,7 @@ extern irqreturn_t timer_interrupt(int irq, void *dev_id, struct pt_regs *regs); #define SN_LB_INT_WAR_INTERVAL 100 #define SN_LB_INT_WAR_INTERVAL 100 void sn_timer_interrupt(int irq, void *dev_id, struct pt_regs *regs) void sn_timer_interrupt(int irq, void *dev_id) { { /* LED blinking */ /* LED blinking */ if (!pda->hb_count--) { if (!pda->hb_count--) { Loading drivers/serial/sn_console.c +1 −1 Original line number Original line Diff line number Diff line Loading @@ -674,7 +674,7 @@ static void sn_sal_timer_poll(unsigned long data) if (!port->sc_port.irq) { if (!port->sc_port.irq) { spin_lock_irqsave(&port->sc_port.lock, flags); spin_lock_irqsave(&port->sc_port.lock, flags); if (sn_process_input) if (sn_process_input) sn_receive_chars(port, NULL, flags); sn_receive_chars(port, flags); sn_transmit_chars(port, TRANSMIT_RAW); sn_transmit_chars(port, TRANSMIT_RAW); spin_unlock_irqrestore(&port->sc_port.lock, flags); spin_unlock_irqrestore(&port->sc_port.lock, flags); mod_timer(&port->sc_timer, mod_timer(&port->sc_timer, Loading Loading
arch/ia64/kernel/irq.c +4 −1 Original line number Original line Diff line number Diff line Loading @@ -194,8 +194,11 @@ void fixup_irqs(void) */ */ for (irq=0; irq < NR_IRQS; irq++) { for (irq=0; irq < NR_IRQS; irq++) { if (vectors_in_migration[irq]) { if (vectors_in_migration[irq]) { struct pt_regs *old_regs = set_irq_regs(NULL); vectors_in_migration[irq]=0; vectors_in_migration[irq]=0; __do_IRQ(irq, NULL); __do_IRQ(irq); set_irq_regs(old_regs); } } } } Loading
arch/ia64/kernel/irq_ia64.c +5 −2 Original line number Original line Diff line number Diff line Loading @@ -226,6 +226,8 @@ void ia64_process_pending_intr(void) */ */ while (vector != IA64_SPURIOUS_INT_VECTOR) { while (vector != IA64_SPURIOUS_INT_VECTOR) { if (!IS_RESCHEDULE(vector)) { if (!IS_RESCHEDULE(vector)) { struct pt_regs *old_regs = set_irq_regs(NULL); ia64_setreg(_IA64_REG_CR_TPR, vector); ia64_setreg(_IA64_REG_CR_TPR, vector); ia64_srlz_d(); ia64_srlz_d(); Loading @@ -236,7 +238,8 @@ void ia64_process_pending_intr(void) * Probably could shared code. * Probably could shared code. */ */ vectors_in_migration[local_vector_to_irq(vector)]=0; vectors_in_migration[local_vector_to_irq(vector)]=0; __do_IRQ(local_vector_to_irq(vector), NULL); __do_IRQ(local_vector_to_irq(vector)); set_irq_regs(old_regs); /* /* * Disable interrupts and send EOI * Disable interrupts and send EOI Loading @@ -253,7 +256,7 @@ void ia64_process_pending_intr(void) #ifdef CONFIG_SMP #ifdef CONFIG_SMP extern irqreturn_t handle_IPI (int irq, void *dev_id, struct pt_regs *regs); extern irqreturn_t handle_IPI (int irq, void *dev_id); static struct irqaction ipi_irqaction = { static struct irqaction ipi_irqaction = { .handler = handle_IPI, .handler = handle_IPI, Loading
arch/ia64/sn/kernel/sn2/timer_interrupt.c +1 −1 Original line number Original line Diff line number Diff line Loading @@ -36,7 +36,7 @@ extern irqreturn_t timer_interrupt(int irq, void *dev_id, struct pt_regs *regs); #define SN_LB_INT_WAR_INTERVAL 100 #define SN_LB_INT_WAR_INTERVAL 100 void sn_timer_interrupt(int irq, void *dev_id, struct pt_regs *regs) void sn_timer_interrupt(int irq, void *dev_id) { { /* LED blinking */ /* LED blinking */ if (!pda->hb_count--) { if (!pda->hb_count--) { Loading
drivers/serial/sn_console.c +1 −1 Original line number Original line Diff line number Diff line Loading @@ -674,7 +674,7 @@ static void sn_sal_timer_poll(unsigned long data) if (!port->sc_port.irq) { if (!port->sc_port.irq) { spin_lock_irqsave(&port->sc_port.lock, flags); spin_lock_irqsave(&port->sc_port.lock, flags); if (sn_process_input) if (sn_process_input) sn_receive_chars(port, NULL, flags); sn_receive_chars(port, flags); sn_transmit_chars(port, TRANSMIT_RAW); sn_transmit_chars(port, TRANSMIT_RAW); spin_unlock_irqrestore(&port->sc_port.lock, flags); spin_unlock_irqrestore(&port->sc_port.lock, flags); mod_timer(&port->sc_timer, mod_timer(&port->sc_timer, Loading