]> err.no Git - linux-2.6/commit
ftrace: prevent freeing of all failed updates
authorAbhishek Sagar <sagar.abhishek@gmail.com>
Sun, 1 Jun 2008 16:17:30 +0000 (21:47 +0530)
committerIngo Molnar <mingo@elte.hu>
Tue, 10 Jun 2008 09:56:57 +0000 (11:56 +0200)
commit0eb967012ea15e6e8cfab483d9fa37bc602d400c
tree0e9c026a2d83f313cdc3f9f235d58ff522cee090
parente0773410247f1e5fc6f7c52a4c5f3c6c9873d527
ftrace: prevent freeing of all failed updates

Prevent freeing of records which cause problems and correspond to function from
core kernel text. A new flag, FTRACE_FL_CONVERTED is used to mark a record
as "converted". All other records are patched lazily to NOPs. Failed records
now also remain on frace_hash table. Each invocation of ftrace_record_ip now
checks whether the traced function has ever been recorded (including past
failures) and doesn't re-record it again.

Signed-off-by: Abhishek Sagar <sagar.abhishek@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
include/linux/ftrace.h
kernel/trace/ftrace.c