diff options
author | jistone <jistone> | 2006-06-02 19:11:24 +0000 |
---|---|---|
committer | jistone <jistone> | 2006-06-02 19:11:24 +0000 |
commit | 807e901f301df384499249ebe548884f504e4313 (patch) | |
tree | d82db63659d28127e40514ec29a3a96782b716e9 | |
parent | 6e3347a9815f4a457b6393a22f21b6f2c6b588af (diff) | |
download | systemtap-steved-807e901f301df384499249ebe548884f504e4313.tar.gz systemtap-steved-807e901f301df384499249ebe548884f504e4313.tar.xz systemtap-steved-807e901f301df384499249ebe548884f504e4313.zip |
2006-06-02 Josh Stone <joshua.i.stone@intel.com>
* process.stp (exec, exec_complete): conditionally include
compat_do_execve for 64-bit kernels
* process.stp (handle_signal): use optional probes to alternate
between function or inline
-rw-r--r-- | tapset/ChangeLog | 7 | ||||
-rw-r--r-- | tapset/process.stp | 28 |
2 files changed, 15 insertions, 20 deletions
diff --git a/tapset/ChangeLog b/tapset/ChangeLog index 9f4a556f..0e7de1fd 100644 --- a/tapset/ChangeLog +++ b/tapset/ChangeLog @@ -1,3 +1,10 @@ +2006-06-02 Josh Stone <joshua.i.stone@intel.com> + + * process.stp (exec, exec_complete): conditionally include + compat_do_execve for 64-bit kernels + * process.stp (handle_signal): use optional probes to alternate + between function or inline + 2006-05-30 Martin Hunt <hunt@redhat.com> * aux_syscalls.stp (_mountflags_str): Rewrite. diff --git a/tapset/process.stp b/tapset/process.stp index d08b10e2..5f51f5ee 100644 --- a/tapset/process.stp +++ b/tapset/process.stp @@ -51,13 +51,8 @@ probe process.start = kernel.function("schedule_tail") { } * filename - the path to the new executable */ probe process.exec = -/* - kernel.function("do_execve") -%( arch != "i586" %? %( arch != "i686" %? - , kernel.function("compat_do_execve") -%) %) -*/ - kernel.function("*do_execve") + kernel.function("do_execve"), + kernel.function("compat_do_execve") ? { filename = kernel_string($filename) } @@ -76,13 +71,8 @@ probe process.exec = * success - a boolean indicating whether the exec was successful */ probe process.exec_complete = -/* - kernel.function("do_execve").return -%( arch != "i586" %? %( arch != "i686" %? - , kernel.function("compat_do_execve").return -%) %) -*/ - kernel.function("*do_execve").return + kernel.function("do_execve").return, + kernel.function("compat_do_execve").return ? { errno = retval() success = (errno >= 0) @@ -177,12 +167,10 @@ probe _process.signal_send.part3 = * signal - the number of the signal * signal_name - a string representation of the signal */ -/* FIXME - handle_signal is sometimes inlined, depending on the whims of the - * compiler. On FC5 it is inlined, but on RHEL4 it is not. Until we have a - * nice way for tapsets to specify "possibly inlined", we can't include this - * probe point. -probe process.signal_handle = kernel.function("handle_signal") { +probe process.signal_handle = + kernel.function("handle_signal") ?, + kernel.inline("handle_signal") ? +{ signal = $sig signal_name = _signal_name($sig) } -*/ |