This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC][Revised Patch 0/5] New Probe family : probe kprobe.function()


Here's the revised set of patches.

Frank Ch. Eigler wrote:
Prerna Saxena <prerna@linux.vnet.ibm.com> writes:

Here's a prototype of a new language feature in systemtap : probe
kprobe [...]

Looks good. I suggest a few changes:


- removal of ".inline"-related logic/variables, since they are inherently
unavailable
Done.
- removal of registration/unregistration code that was added for symbolic
kprobes only to optimize the thousands-of-probes case, such as the
char*/char[] automagic selector
Changed code to implement "stap_dwarfless_probe->pp" & "stap_dwarfless_probe->symbol_name" as a char[] only , instead of allowing a choice between char* & char[] implementation.
- initialization of the new systemtap_session field
Thanks.....dunno how I'd missed this one :-)
- adding test cases, documentation, NEWS blurb
I've added one testcase in systemtap.base for probe kprobe.function().
To what extent does the kernel's symbolic kprobe logic allow probes to
be placed within modules?
As pointed by Ananth, a kprobe.function("") construct can be used to probe module functions too, since it searches modules if the said symbol wasnt found in the kernel. However, in the event the probed function name is present in more than one modules, the probe point gets registered for first instance of the function. ( which may or may not be the desired probe point) .

Probing module functions can be accomplished using this separate construct :
   probe kprobe.module("module_name").function("function_name")
 Would it be worthwhile to allow numeric
probe addresses (as in kernel.statement(0xaddr).absolute)?

Thanks for the suggestion :-)
This is implemented as :
probe kprobe.statement(ADDRESS).absolute
This needs to be run in privileged mode , just like kernel.statement() probes


- FChE
Regards,

--
Prerna Saxena

Linux Technology Centre,
IBM Systems and Technology Lab,
Bangalore, India



-- Prerna Saxena

Linux Technology Centre,
IBM Systems and Technology Lab,
Bangalore, India



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]