Messages in this thread | | | Date | Thu, 9 Oct 2014 15:50:18 +1100 | From | Stephen Rothwell <> | Subject | linux-next: manual merge of the percpu tree with the tip tree |
| |
Hi all,
Today's linux-next merge of the percpu tree got a conflict in kernel/irq_work.c between commit 76a33061b932 ("irq_work: Force raised irq work to run on irq work interrupt") from the tip tree and commit 22127e93c587 ("time: Replace __get_cpu_var uses") from the percpu tree.
I fixed it up (see below) and can carry the fix as necessary (no action is required).
-- Cheers, Stephen Rothwell sfr@canb.auug.org.au
diff --cc kernel/irq_work.c index 385b85aded19,345d19edcdae..000000000000 --- a/kernel/irq_work.c +++ b/kernel/irq_work.c @@@ -113,12 -113,10 +113,12 @@@ bool irq_work_needs_cpu(void { struct llist_head *raised, *lazy; - raised = &__get_cpu_var(raised_list); - lazy = &__get_cpu_var(lazy_list); + raised = this_cpu_ptr(&raised_list); + lazy = this_cpu_ptr(&lazy_list); - if (llist_empty(raised) && llist_empty(lazy)) - return false; + + if (llist_empty(raised) || arch_irq_work_has_interrupt()) + if (llist_empty(lazy)) + return false; /* All work should have been flushed before going offline */ WARN_ON_ONCE(cpu_is_offline(smp_processor_id())); [unhandled content-type:application/pgp-signature] | |