Thread (5 messages) flat view 5 messages, 3 authors, 2011-06-23

Re: [PATCH 1/3] printk: Release console_sem after logbuf_lock

From: Peter Zijlstra <peterz@infradead.org>
Date: 2011-06-10 12:43:05
Also in: lkml

On Fri, 2011-06-10 at 14:41 +0200, Peter Zijlstra wrote:
On Fri, 2011-06-10 at 14:34 +0200, Ingo Molnar wrote:
quoted
* Peter Zijlstra [off-list ref] wrote:
quoted
thinking that that would have my printk stmts appear on both the 
fbcon as well as the serial line. But they fail to appear on the 
latency tracer (current max was 165us waking an idle cpu).
Have you removed this bit:

                spin_unlock(&logbuf_lock);
                stop_critical_timings();        /* don't trace print latency */
                call_console_drivers(_con_start, _log_end);
                start_critical_timings();
                local_irq_restore(flags);

which hides the latencies from the latency tracer?
it shouldn't those flags come from spin_lock_irqsave(), which already
has IRQs disabled, so the restore shouldn't re-enable them.

Hmm,. that might actually already be true for mainline too, yeah, looks
like we call vprintk()->console_unlock() with IRQs-disabled.

Hohumm..
Also, I used the preemptirqoff tracer, so even if it did re-enable
interrupts we should still have preemption disabled and still catch the
latency.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help