]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - kernel/irq/handle.c
genirq: Use a common macro to go through the actions list
[mirror_ubuntu-bionic-kernel.git] / kernel / irq / handle.c
index 57bff7857e879bf2301a92723ade0a968870e637..a15b5485b446e8ff5575ba87e9a4cabb80aa7286 100644 (file)
@@ -136,10 +136,9 @@ irqreturn_t handle_irq_event_percpu(struct irq_desc *desc)
 {
        irqreturn_t retval = IRQ_NONE;
        unsigned int flags = 0, irq = desc->irq_data.irq;
-       struct irqaction *action = desc->action;
+       struct irqaction *action;
 
-       /* action might have become NULL since we dropped the lock */
-       while (action) {
+       for_each_action_of_desc(desc, action) {
                irqreturn_t res;
 
                trace_irq_handler_entry(irq, action);
@@ -173,7 +172,6 @@ irqreturn_t handle_irq_event_percpu(struct irq_desc *desc)
                }
 
                retval |= res;
-               action = action->next;
        }
 
        add_interrupt_randomness(irq, flags);