[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070327192230.GA31695@elte.hu>
Date: Tue, 27 Mar 2007 21:22:30 +0200
From: Ingo Molnar <mingo@...e.hu>
To: Roland Dreier <rdreier@...co.com>
Cc: linux-kernel@...r.kernel.org
Subject: Re: Early hang with 2.6.21-rc4-rt1
* Roland Dreier <rdreier@...co.com> wrote:
> Any suggestion of where to look? My /proc/latency_trace stays
> stubbornly empty -- are there any sysctls I need to change from their
> default to get latency tracing? I'm a complete noob when it comes to
> the -rt patch, so I'm not sure what the right way to use the tracing
> infrastructure to track down this lost rtc interrupts issue is.
please apply the patch below, from Steve - this should fix the tracer.
Ingo
---------------------->
Ingo,
I wasn't able to turn on latency tracing on a x86_64 box. Using logdev
to see what was happening, I found that echoing 0
into /proc/sys/kernel/preempt_max_latency would only change the max from
-1ULL to 0xffffffff00000000. Which would keep the max pretty high still.
The problem is in sysctl.c where preempt_max_latency can be modified. On
systems where cycle_t is greater than the size of int (x86_64) we only
write to the 4 LSB.
Here's the patch:
-- Steve
Signed-off-by: Steven Rostedt <rostedt@...dmis.org>
Index: linux-2.6.21-rc5/kernel/sysctl.c
===================================================================
--- linux-2.6.21-rc5.orig/kernel/sysctl.c
+++ linux-2.6.21-rc5/kernel/sysctl.c
@@ -287,17 +287,17 @@ static ctl_table kern_table[] = {
.ctl_name = CTL_UNNUMBERED,
.procname = "preempt_max_latency",
.data = &preempt_max_latency,
- .maxlen = sizeof(int),
+ .maxlen = sizeof(preempt_max_latency),
.mode = 0644,
- .proc_handler = &proc_dointvec,
+ .proc_handler = &proc_doulongvec_minmax,
},
{
.ctl_name = CTL_UNNUMBERED,
.procname = "preempt_thresh",
.data = &preempt_thresh,
- .maxlen = sizeof(int),
+ .maxlen = sizeof(preempt_thresh),
.mode = 0644,
- .proc_handler = &proc_dointvec,
+ .proc_handler = &proc_doulongvec_minmax,
},
#endif
#ifdef CONFIG_EVENT_TRACE
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists