summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorByungchul Park <byungchul.park@lge.com>2017-10-30 21:46:54 -0400
committerIngo Molnar <mingo@kernel.org>2017-10-31 05:24:39 -0400
commit16c0890dc66d258fdeccf7b15a133f3930b19143 (patch)
tree9129abdd902601a4783338a4ea0ead4951e0a726
parent250a53d6fcd86012935d1cf71eb2e3d6e88c412c (diff)
irq/work: Don't reinvent the wheel but use existing llist API
Use the proper llist APIs instead of open-coded variants of them. Signed-off-by: Byungchul Park <byungchul.park@lge.com> Signed-off-by: Frederic Weisbecker <frederic@kernel.org> Acked-by: Thomas Gleixner <tglx@linutronix.de> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/1509414414-14987-1-git-send-email-frederic@kernel.org Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r--kernel/irq_work.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/kernel/irq_work.c b/kernel/irq_work.c
index bcf107ce0854..e2ebe8c71e8f 100644
--- a/kernel/irq_work.c
+++ b/kernel/irq_work.c
@@ -138,11 +138,7 @@ static void irq_work_run_list(struct llist_head *list)
138 return; 138 return;
139 139
140 llnode = llist_del_all(list); 140 llnode = llist_del_all(list);
141 while (llnode != NULL) { 141 llist_for_each_entry(work, llnode, llnode) {
142 work = llist_entry(llnode, struct irq_work, llnode);
143
144 llnode = llist_next(llnode);
145
146 /* 142 /*
147 * Clear the PENDING bit, after this point the @work 143 * Clear the PENDING bit, after this point the @work
148 * can be re-used. 144 * can be re-used.