diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-08-09 17:57:26 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-08-09 17:57:26 -0400 |
| commit | 95d0ad049cd6937634c0a75f9518f5166daabfce (patch) | |
| tree | ace9d7edcda7cf8400dce293ca26a5599cd81720 /scripts | |
| parent | 413dd8768ada25adbf53284696b71de7e7844969 (diff) | |
| parent | f413cdb80ce00ec1a4d0ab949b5d96c81cae7f75 (diff) | |
Merge branch 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
perf_counter: Fix/complete ftrace event records sampling
perf_counter, ftrace: Fix perf_counter integration
tracing/filters: Always free pred on filter_add_subsystem_pred() failure
tracing/filters: Don't use pred on alloc failure
ring-buffer: Fix memleak in ring_buffer_free()
tracing: Fix recordmcount.pl to handle sections with only weak functions
ring-buffer: Fix advance of reader in rb_buffer_peek()
tracing: do not use functions starting with .L in recordmcount.pl
ring-buffer: do not disable ring buffer on oops_in_progress
ring-buffer: fix check of try_to_discard result
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/recordmcount.pl | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/scripts/recordmcount.pl b/scripts/recordmcount.pl index d29baa2e063a..911ba7ffab84 100755 --- a/scripts/recordmcount.pl +++ b/scripts/recordmcount.pl | |||
| @@ -393,7 +393,7 @@ while (<IN>) { | |||
| 393 | $read_function = 0; | 393 | $read_function = 0; |
| 394 | } | 394 | } |
| 395 | # print out any recorded offsets | 395 | # print out any recorded offsets |
| 396 | update_funcs() if ($text_found); | 396 | update_funcs() if (defined($ref_func)); |
| 397 | 397 | ||
| 398 | # reset all markers and arrays | 398 | # reset all markers and arrays |
| 399 | $text_found = 0; | 399 | $text_found = 0; |
| @@ -414,7 +414,10 @@ while (<IN>) { | |||
| 414 | $offset = hex $1; | 414 | $offset = hex $1; |
| 415 | } else { | 415 | } else { |
| 416 | # if we already have a function, and this is weak, skip it | 416 | # if we already have a function, and this is weak, skip it |
| 417 | if (!defined($ref_func) && !defined($weak{$text})) { | 417 | if (!defined($ref_func) && !defined($weak{$text}) && |
| 418 | # PPC64 can have symbols that start with .L and | ||
| 419 | # gcc considers these special. Don't use them! | ||
| 420 | $text !~ /^\.L/) { | ||
| 418 | $ref_func = $text; | 421 | $ref_func = $text; |
| 419 | $offset = hex $1; | 422 | $offset = hex $1; |
| 420 | } | 423 | } |
| @@ -441,7 +444,7 @@ while (<IN>) { | |||
| 441 | } | 444 | } |
| 442 | 445 | ||
| 443 | # dump out anymore offsets that may have been found | 446 | # dump out anymore offsets that may have been found |
| 444 | update_funcs() if ($text_found); | 447 | update_funcs() if (defined($ref_func)); |
| 445 | 448 | ||
| 446 | # If we did not find any mcount callers, we are done (do nothing). | 449 | # If we did not find any mcount callers, we are done (do nothing). |
| 447 | if (!$opened) { | 450 | if (!$opened) { |
