lkml.org 
[lkml]   [2012]   [Nov]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 7/9] irq_work: Warn if there's still work on cpu_down
    Date
    From: Steven Rostedt <rostedt@goodmis.org>

    If we are in nohz and there's still irq_work to be done when the idle
    task is about to go offline, give a nasty warning. Everything should
    have been flushed from the CPU_DYING notifier already. Further attempts
    to enqueue an irq_work are buggy because irqs are disabled by
    __cpu_disable(). The best we can do is to report the issue to the user.

    Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Ingo Molnar <mingo@kernel.org>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: Paul Gortmaker <paul.gortmaker@windriver.com>
    Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
    ---
    kernel/irq_work.c | 3 +++
    1 files changed, 3 insertions(+), 0 deletions(-)

    diff --git a/kernel/irq_work.c b/kernel/irq_work.c
    index 4ed1749..480f747 100644
    --- a/kernel/irq_work.c
    +++ b/kernel/irq_work.c
    @@ -109,6 +109,9 @@ bool irq_work_needs_cpu(void)
    if (llist_empty(this_list))
    return false;

    + /* All work should have been flushed before going offline */
    + WARN_ON_ONCE(cpu_is_offline(smp_processor_id()));
    +
    return true;
    }

    --
    1.7.5.4


    \
     
     \ /
      Last update: 2012-11-18 02:21    [W:5.128 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site