All of lore.kernel.org
 help / color / mirror / Atom feed
* [patch] latency-tracing-v2.6.16
@ 2006-03-20 10:13 Ingo Molnar
  2006-03-20 14:24 ` Wu Fengguang
  0 siblings, 1 reply; 3+ messages in thread
From: Ingo Molnar @ 2006-03-20 10:13 UTC (permalink / raw)
  To: linux-kernel

i've released the latency-tracer patch for v2.6.16:

   http://redhat.com/~mingo/latency-tracing-patches/latency-tracing-v2.6.16.patch

max scheduling latencies can be tracked via the enabling of 
CONFIG_WAKEUP_TIMING. Tracking can be started via the resetting of the 
max latency:

	echo 0 > /proc/sys/kernel/preempt_max_latency

if CONFIG_LATENCY_TRACE is enabled too then an execution trace will be 
automatically generated as well, accessible via /proc/latency_trace.

if CONFIG_DEBUG_STACKOVERFLOW is enabled too then the function tracer 
will also track the maximum stack-footprint observed in the system, on a 
per-function-call basis. New maximums are reported to the syslog 
immediately. (which can be quite verbose during bootup.)

(the latency-tracer has numerous other features as well, such as 
userspace-triggered kernel-tracing, irq-triggered tracing, max 
preempt-off or irq-off tracing, trace-to-console-via-early-printk for 
the debugging of early bootup crashes, print-trace-at-crash, and more.  
See past postings and the code for details.)

	Ingo

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [patch] latency-tracing-v2.6.16
  2006-03-20 10:13 [patch] latency-tracing-v2.6.16 Ingo Molnar
@ 2006-03-20 14:24 ` Wu Fengguang
  2006-03-20 14:33   ` Ingo Molnar
  0 siblings, 1 reply; 3+ messages in thread
From: Wu Fengguang @ 2006-03-20 14:24 UTC (permalink / raw)
  To: Ingo Molnar; +Cc: linux-kernel

On Mon, Mar 20, 2006 at 11:13:07AM +0100, Ingo Molnar wrote:
> i've released the latency-tracer patch for v2.6.16:
> 
>    http://redhat.com/~mingo/latency-tracing-patches/latency-tracing-v2.6.16.patch
 
Thanks, it helps a lot :)

> max scheduling latencies can be tracked via the enabling of 
> CONFIG_WAKEUP_TIMING. Tracking can be started via the resetting of the 
> max latency:
> 
> 	echo 0 > /proc/sys/kernel/preempt_max_latency
> 
> if CONFIG_LATENCY_TRACE is enabled too then an execution trace will be 
> automatically generated as well, accessible via /proc/latency_trace.

In fact that is not enough.
In include/asm-i386/timex.h, get_cycles() is defined as

        static inline cycles_t get_cycles (void)
        {
                unsigned long long ret=0;
        
        #ifndef CONFIG_X86_TSC
                if (!cpu_has_tsc)
                        return 0;
        #endif
        
        #if defined(CONFIG_X86_GENERIC) || defined(CONFIG_X86_TSC)
                rdtscll(ret);
        #endif
                return ret;
        }

If one (as I did at the first attempt) selects a CPU type of
"586/K5/5x86/6x86/6x86MX", he will get nothing from /proc/latency_trace.

So does it make sense to add dependency lines like the following one?

        depends on (!X86_32 || X86_GENERIC || X86_TSC)

Cheers,
Wu

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [patch] latency-tracing-v2.6.16
  2006-03-20 14:24 ` Wu Fengguang
@ 2006-03-20 14:33   ` Ingo Molnar
  0 siblings, 0 replies; 3+ messages in thread
From: Ingo Molnar @ 2006-03-20 14:33 UTC (permalink / raw)
  To: Wu Fengguang, linux-kernel


* Wu Fengguang <wfg@mail.ustc.edu.cn> wrote:

> If one (as I did at the first attempt) selects a CPU type of 
> "586/K5/5x86/6x86/6x86MX", he will get nothing from 
> /proc/latency_trace.
> 
> So does it make sense to add dependency lines like the following one?
> 
>         depends on (!X86_32 || X86_GENERIC || X86_TSC)

yeah, makes sense - i've added this too and have uploaded an updated 
version of the patch.

	Ingo

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2006-03-20 14:35 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-03-20 10:13 [patch] latency-tracing-v2.6.16 Ingo Molnar
2006-03-20 14:24 ` Wu Fengguang
2006-03-20 14:33   ` Ingo Molnar

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.