diff options
author | wenji <wjhuang@dhcp-beijing-cdc-10-182-120-233.cn.oracle.com> | 2008-05-26 02:59:33 -0400 |
---|---|---|
committer | wenji <wjhuang@dhcp-beijing-cdc-10-182-120-233.cn.oracle.com> | 2008-05-26 02:59:33 -0400 |
commit | 63aa9fb121d0eedc30d9b9a0cb0b91da96b551d8 (patch) | |
tree | d484771b8d7318767681f0c0dcbbcb24a58d3dc9 /tapset | |
parent | 0b2713c674778363ba5b400c013ff04be520303e (diff) | |
download | systemtap-steved-63aa9fb121d0eedc30d9b9a0cb0b91da96b551d8.tar.gz systemtap-steved-63aa9fb121d0eedc30d9b9a0cb0b91da96b551d8.tar.xz systemtap-steved-63aa9fb121d0eedc30d9b9a0cb0b91da96b551d8.zip |
Correct signal.stp for 2.6.26
Diffstat (limited to 'tapset')
-rw-r--r-- | tapset/ChangeLog | 5 | ||||
-rw-r--r-- | tapset/signal.stp | 22 |
2 files changed, 22 insertions, 5 deletions
diff --git a/tapset/ChangeLog b/tapset/ChangeLog index 7514ba25..2931e23b 100644 --- a/tapset/ChangeLog +++ b/tapset/ChangeLog @@ -1,3 +1,8 @@ + +2008-05-26 Wenji Huang <wenji.huang@oracle.com> + + * signal.stp (send.*): Correct for 2.6.26. + 2008-05-23 Frank Ch. Eigler <fche@elastic.org> * nfs.stp (*): Similarly convert kernel?,module? -> kernel!,module. diff --git a/tapset/signal.stp b/tapset/signal.stp index 72ba9520..7afa1024 100644 --- a/tapset/signal.stp +++ b/tapset/signal.stp @@ -37,8 +37,7 @@ */ probe signal.send = _signal.send.* { - sig=$sig - sig_name = _signal_name($sig) + sig_name = _signal_name(sig) sig_pid = task_pid(task) pid_name = task_execname(task) @@ -53,25 +52,35 @@ probe signal.send = _signal.send.* probe _signal.send.part1 = kernel.function("__group_send_sig_info") { name = "__group_send_sig_info" + sig=$sig task = $p sinfo = $info shared = 1 send2queue = 0 } +%( kernel_v <= "2.6.25" %? probe _signal.send.part2 = kernel.function("send_group_sigqueue") { name = "send_group_sigqueue" + sig=$sig task = $p sinfo = 0 # $q->info shared = 1 send2queue = 1 } +%) probe _signal.send.part3 = kernel.function("send_sigqueue") { name = "send_sigqueue" +%( kernel_v >= "2.6.25" %? + task = $t + sig=$q->info->si_signo +%: task = $p + sig=$sig +%) sinfo = 0 # $q->info shared = 0 send2queue = 1 @@ -80,6 +89,7 @@ probe _signal.send.part3 = kernel.function("send_sigqueue") probe _signal.send.part4 = kernel.function("specific_send_sig_info") { name = "specific_send_sig_info" + sig=$sig task = $t sinfo = $info shared = 0 @@ -121,6 +131,7 @@ probe _signal.send.part4.return = kernel.function("specific_send_sig_info").retu send2queue = 0 } +%( kernel_v <= "2.6.25" %? /* * - return 0 if the signal is either sucessfully added into the * sigqueue of receiving process or a SI_TIMER entry is already @@ -135,6 +146,7 @@ probe _signal.send.part2.return = kernel.function("send_group_sigqueue").return shared = 1 send2queue = 1 } +%) /* * - return 0 if the signal is either sucessfully added into the @@ -224,7 +236,7 @@ probe signal.check_ignored = kernel.function("sig_ignored") sig_name = _signal_name($sig) } -probe signal.check_ignored.return = kernel.function("sig_ignored").return +probe signal.check_ignored.return = kernel.function("sig_ignored").return ? { name = "sig_ignored" retstr = returnstr(1) @@ -336,7 +348,7 @@ probe signal.systkill.return = syscall.tkill.return */ probe signal.send_sig_queue = kernel.function("send_sigqueue"), - kernel.function("send_group_sigqueue") + kernel.function("send_group_sigqueue") ? { sig = $sig sig_name = _signal_name($sig) @@ -347,7 +359,7 @@ probe signal.send_sig_queue = probe signal.send_sig_queue.return = kernel.function("send_sigqueue").return, - kernel.function("send_group_sigqueue").return + kernel.function("send_group_sigqueue").return ? { retstr = returnstr(1) } |