genirq: Use a common macro to go through the actions list
The irq code browses the list of actions differently to inspect the element one by one. Even if it is not a problem, for the sake of consistent code, provide a macro similar to for_each_irq_desc in order to have the same loop to go through the actions list and use it in the code. [ tglx: Renamed the macro ] Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Link: http://lkml.kernel.org/r/1452765253-31148-1-git-send-email-daniel.lezcano@linaro.org Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:

committed by
Thomas Gleixner

parent
fbf198030e
commit
f944b5a7af
@@ -144,13 +144,11 @@ int irq_can_set_affinity(unsigned int irq)
|
||||
*/
|
||||
void irq_set_thread_affinity(struct irq_desc *desc)
|
||||
{
|
||||
struct irqaction *action = desc->action;
|
||||
struct irqaction *action;
|
||||
|
||||
while (action) {
|
||||
for_each_action_of_desc(desc, action)
|
||||
if (action->thread)
|
||||
set_bit(IRQTF_AFFINITY, &action->thread_flags);
|
||||
action = action->next;
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef CONFIG_GENERIC_PENDING_IRQ
|
||||
@@ -994,7 +992,7 @@ void irq_wake_thread(unsigned int irq, void *dev_id)
|
||||
return;
|
||||
|
||||
raw_spin_lock_irqsave(&desc->lock, flags);
|
||||
for (action = desc->action; action; action = action->next) {
|
||||
for_each_action_of_desc(desc, action) {
|
||||
if (action->dev_id == dev_id) {
|
||||
if (action->thread)
|
||||
__irq_wake_thread(desc, action);
|
||||
|
Reference in New Issue
Block a user