]> Pileus Git - ~andy/linux/blobdiff - kernel/irq_work.c
irq_work: Don't stop the tick with pending works
[~andy/linux] / kernel / irq_work.c
index 64eddd59ed83852262b5655a56e8ebb284dcb119..b3c113a14727211356b20c3cdaa3771bb611cb39 100644 (file)
@@ -99,6 +99,17 @@ bool irq_work_queue(struct irq_work *work)
 }
 EXPORT_SYMBOL_GPL(irq_work_queue);
 
+bool irq_work_needs_cpu(void)
+{
+       struct llist_head *this_list;
+
+       this_list = &__get_cpu_var(irq_work_list);
+       if (llist_empty(this_list))
+               return false;
+
+       return true;
+}
+
 /*
  * Run the irq_work entries on this cpu. Requires to be ran from hardirq
  * context with local IRQs disabled.