lkml.org 
[lkml]   [2015]   [Jun]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v0] softirq: Call trace_preempt_on manually to prevent lockdep splatter
On Thu, 28 May 2015, Daniel Wagner wrote:

> __do_softirq() uses __local_bh_disable_ip(SOFTIRQ_OFFSET) to disable
> SOFTIRQs and signaling that softirqs are served.
>
> When done, __do_softirq() calls __local_bh_enable(SOFTIRQ_OFFSET)
> to enable them again. The reason it does not call
> __local_bh_enable_ip(SOFTIRQ_OFFSET) is because __local_bh_enable_ip()
> would process still-pending softirqs.
>
> Now, we face the same problem as in __local_bh_disable_ip()
> with the preempt tracer hooking into preempt_count_sub(). This
> will case lockdep warning, when for example the kernel is configured
> to run all IRQs as threads and preemptoff tracer is activated:

....

> Signed-off-by: Daniel Wagner <daniel.wagner@bmw-carit.de>

Acked-by: Thomas Gleixner <tglx@linutronix.de>


\
 
 \ /
  Last update: 2015-06-02 22:21    [W:0.053 / U:0.036 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site