![]() | |||||||||||||
Messages in this thread |
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 | |||||||||||||