Messages in this thread | | | Date | Tue, 3 Jun 2014 16:56:53 +0200 | From | Frederic Weisbecker <> | Subject | Re: [PATCH 1/5] irq_work: Split raised and lazy lists |
| |
On Tue, Jun 03, 2014 at 04:54:42PM +0200, Peter Zijlstra wrote: > On Tue, Jun 03, 2014 at 04:40:16PM +0200, Frederic Weisbecker wrote: > > @@ -90,10 +89,10 @@ EXPORT_SYMBOL_GPL(irq_work_queue); > > > > bool irq_work_needs_cpu(void) > > { > > - struct llist_head *this_list; > > + struct llist_head *list; > > > > - this_list = &__get_cpu_var(irq_work_list); > > - if (llist_empty(this_list)) > > + list = &__get_cpu_var(lazy_list); > > + if (llist_empty(list)) > > return false; > > > > /* All work should have been flushed before going offline */ > > Does this mean needs_cpu() only checks the lazy list? What about archs > without the arch_irq_work_raise() function? They run the other list from > the tick too.
Right, I'll fix that too.
| |