lkml.org 
[lkml]   [2004]   [Jul]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: Instrumenting high latency
Con Kolivas <kernel@kolivas.org> wrote:
>
> It can trip
> over itself saying that it's own code paths are a problem too if it gets
> real busy.

This might fix it?

diff -puN arch/i386/kernel/traps.c~instrumenting-high-latency-fixes arch/i386/kernel/traps.c
--- 25/arch/i386/kernel/traps.c~instrumenting-high-latency-fixes 2004-07-11 23:47:51.007799680 -0700
+++ 25-akpm/arch/i386/kernel/traps.c 2004-07-11 23:57:58.726412408 -0700
@@ -1065,6 +1065,9 @@ void __dec_preempt_count(void)
if (preempt_count() == 1 && system_state == SYSTEM_RUNNING &&
__get_cpu_var(preempt_entry)) {
u64 exit;
+
+ preempt_count()++; /* Prevent recursive warnings */
+
__get_cpu_var(preempt_exit)
= (unsigned long)__builtin_return_address(0);
rdtscll(exit);
@@ -1082,12 +1085,13 @@ void __dec_preempt_count(void)
preempt_thresh);
print_symbol("%s and ending at ",
__get_cpu_var(preempt_entry));
- print_symbol("%s\n",
- __get_cpu_var(preempt_exit));
+ print_symbol("%s", __get_cpu_var(preempt_exit));
+ printk("\n");
dump_stack();
}
}
__get_cpu_var(preempt_exit) = __get_cpu_var(preempt_entry) = 0;
+ preempt_count()--;
}
preempt_count()--;
}
_
-
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    [W:0.038 / U:2.696 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site