This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug testsuite/11514] nd_syscall.exp takes more than 10 times longer than syscall.exp testcase
- From: "mjw at redhat dot com" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sources dot redhat dot com
- Date: 21 Apr 2010 10:30:08 -0000
- Subject: [Bug testsuite/11514] nd_syscall.exp takes more than 10 times longer than syscall.exp testcase
- References: <20100419113044.11514.mjw@redhat.com>
- Reply-to: sourceware-bugzilla at sourceware dot org
------- Additional Comments From mjw at redhat dot com 2010-04-21 10:30 -------
Some follow up patches:
- error/warning reporting was broken, fixed by:
commit 9319b767b63e39e44ad5ece313a98c973dcc25ef
Author: Mark Wielaard <mjw@redhat.com>
Date: Tue Apr 20 23:03:30 2010 +0200
Warn if kprobe symbol name not found on non-optional probe.
* tapsets.cxx (kprobe_derived_probe_group::emit_module_init): Call
_stp_warn when symbol name couldn't be resolved to an address and
the probe isn't optional like badkprobe.exp expects.
- kallsyms_on_each_symbol isn't available on older kernels, only use it with
newer ones:
commit 03a4ec63de7060914b01320f6e840e0bc2d0beda
Author: Mark Wielaard <mjw@redhat.com>
Date: Wed Apr 21 11:21:07 2010 +0200
PR11514 Only use kallsyms_on_each_symbol speedup when available.
* runtime/autoconf-kallsyms-on-each-symbol.c: New check.
* buildrun.cxx (compile_pass): Add new check to output_autoconf.
* tapsets.cxx (kprobe_derived_probe_group::emit_module_decls): Only declare
kprobe_resolve when STAPCONF_KALLSYMS_ON_EACH_SYMBOL defined.
(kprobe_derived_probe_group::emit_module_init): Check whether to invoke
kallsyms_on_each_symbol optimization.
- Some micro-optimizations suggested on irc:
commit fc1d2aa28ccee8c722d545b5215ae34f94514b18
Author: Mark Wielaard <mjw@redhat.com>
Date: Wed Apr 21 11:58:09 2010 +0200
Add some kallsyms_on_each_symbol micro-optimisations.
These only help when your kprobe group consists of a list of symbols
that can all be resolved.
* tapsets.cxx (kprobe_derived_probe_group::emit_module_init): Calculate
how many probe symbols need to be resolved. Pass to kprobe_resolve.
(kprobe_derived_probe_group::emit_module_decls): In kprobe_resolve
keep track of how many kprobe symbols haven't resolved yet. Return
-1 when all done.
--
http://sourceware.org/bugzilla/show_bug.cgi?id=11514
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.