lkml.org 
[lkml]   [2004]   [Jul]   [12]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
FromCon Kolivas <>
SubjectRe: Instrumenting high latency
DateMon, 12 Jul 2004 16:43:41 +1000
Andrew Morton writes:

> Con Kolivas <kernel@kolivas.org> wrote:
>>
>> Because of the recent discussion about latency in the kernel I asked William 
>> Lee Irwin III to help create some instrumentation to determine where in the 
>> kernel there were still sustained periods of non-preemptible code. He hacked 
>> together this simple patch which times periods according to the preempt 
>> count.
> 
> Looks sane.
> 
>> The patch appears to require CONFIG_PREEMPT enabled on uniprocessor and is 
>> i386 only at the moment.
> 
> Not sure what you mean by "on uniprocessor"?  AFAICT the patch will work
> as-is on uniprocessor and on SMP.  Looks like it'll work with
> CONFIG_PREEMPT=n, too, although that would be a slightly bizarre thing to

That was WLI's aim, but I had one user report an OOPS with that combination.

> do.
> 
> +				print_symbol("%s\n",
> +					__get_cpu_var(preempt_exit));
> 
> I'll change this to
> 
> 				print_symbol("%s",
> 					__get_cpu_var(preempt_exit));
> 				printk("\n");
> 
> so it doesn't make a mess with CONFIG_KALLSYMS=n.

Ok 

It's not heavily tested but ran for a day on my box at home. It can trip 
over itself saying that it's own code paths are a problem too if it gets 
real busy.

Cheers,
Con

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 14:04    [from the cache]
©2003-2008