Lines Matching defs:action
52 static void warn_no_thread(unsigned int irq, struct irqaction *action)
54 if (test_and_set_bit(IRQTF_WARNED, &action->thread_flags))
58 "but no thread function available.", irq, action->name);
61 void __irq_wake_thread(struct irq_desc *desc, struct irqaction *action)
68 if (action->thread->flags & PF_EXITING)
72 * Wake up the handler thread for this action. If the
75 if (test_and_set_bit(IRQTF_RUNTHREAD, &action->thread_flags))
97 * set_bit(IRQTF_RUNTHREAD, &action->thread_flags);
113 * if (!test_bit(IRQTF_RUNTHREAD, &action->thread_flags))
123 desc->threads_oneshot |= action->thread_mask;
144 wake_up_state(action->thread, TASK_INTERRUPTIBLE);
174 const struct irqaction *action)
180 smp_processor_id(), irq, action->handler,
189 struct irqaction *action;
191 for_each_action_of_desc(desc, action) {
198 !(action->flags & (IRQF_NO_THREAD | IRQF_PERCPU | IRQF_ONESHOT)))
201 trace_irq_handler_entry(irq, action);
206 res = action->handler(irq, action->dev_id);
207 irqhandler_duration_check(ts_start, irq, action);
209 res = action->handler(irq, action->dev_id);
212 trace_irq_handler_exit(irq, action, res);
215 irq, action->handler))
224 if (unlikely(!action->thread_fn)) {
225 warn_no_thread(irq, action);
229 __irq_wake_thread(desc, action);