{
struct irq_desc *desc = irq_desc + irq;
struct irqaction *action;
- struct vx_info_save vxis;
unsigned int status;
kstat_this_cpu.irqs[irq]++;
/*
* No locking required for CPU-local interrupts:
*/
- __enter_vx_admin(&vxis);
if (desc->chip->ack)
desc->chip->ack(irq);
action_ret = handle_IRQ_event(irq, regs, desc->action);
desc->chip->end(irq);
- __leave_vx_admin(&vxis);
return 1;
}
spin_lock(&desc->lock);
- __enter_vx_admin(&vxis);
if (desc->chip->ack)
desc->chip->ack(irq);
/*
* disabled while the handler was running.
*/
desc->chip->end(irq);
- __leave_vx_admin(&vxis);
spin_unlock(&desc->lock);
return 1;