summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--lket.5.in8
-rw-r--r--main.cxx8
-rw-r--r--tapset/ChangeLog9
-rw-r--r--tapset/ppc64/syscalls.stp49
-rw-r--r--tapset/syscalls.stp16
6 files changed, 33 insertions, 62 deletions
diff --git a/ChangeLog b/ChangeLog
index 6b26d38d..566d24c2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2006-07-17 Li Guanglei <guanglei@cn.ibm.com>
+
+ * main.cxx: add LKET's tapsets into stap's default tapsets
+ search path
+
2006-07-13 Frank Ch. Eigler <fche@elastic.org>
* systemtap.spec.in: Add formerly missing admonitional verb.
diff --git a/lket.5.in b/lket.5.in
index 673ed1a7..e1844443 100644
--- a/lket.5.in
+++ b/lket.5.in
@@ -596,16 +596,16 @@ Here are some examples of using LKET:
.TP
To turn on all event hooks:
-stap -e "probe addevent.* {}" -I /usr/share/systemtap/tapsets/LKET -bM
+stap -e "probe addevent.* {}" -bM
.TP
To probe syscall:
-stap -e "probe addevent.syscall {}" -I /usr/share/systemtap/tapsets/LKET -bM
+stap -e "probe addevent.syscall {}" -bM
.TP
To only probe syscall.entry:
-stap -e "probe addevent.syscall.entry {}" -I /usr/share/systemtap/tapsets/LKET -bM
+stap -e "probe addevent.syscall.entry {}" -bM
.TP
To probe netdev transmition and log extra data of mac_len and priority:
-stap -e "probe addevent.netdev.transmit { printf(\\"%4b%4b\\", skb->mac_len, skb->priority) }" -I /usr/share/systemtap/tapsets/LKET -bM
+stap -e "probe addevent.netdev.transmit { printf(\\"%4b%4b\\", skb->mac_len, skb->priority) }" -bM
.SH SEE ALSO
.IR stap (1)
diff --git a/main.cxx b/main.cxx
index 46b8701a..48759b98 100644
--- a/main.cxx
+++ b/main.cxx
@@ -140,10 +140,16 @@ main (int argc, char * const argv [])
s.merge=true;
const char* s_p = getenv ("SYSTEMTAP_TAPSET");
- if (s_p != NULL)
+ if (s_p != NULL)
+ {
s.include_path.push_back (s_p);
+ s.include_path.push_back (string(s_p) + "/LKET");
+ }
else
+ {
s.include_path.push_back (string(PKGDATADIR) + "/tapset");
+ s.include_path.push_back (string(PKGDATADIR) + "/tapset/LKET");
+ }
const char* s_r = getenv ("SYSTEMTAP_RUNTIME");
if (s_r != NULL)
diff --git a/tapset/ChangeLog b/tapset/ChangeLog
index bdf22333..388c3f5e 100644
--- a/tapset/ChangeLog
+++ b/tapset/ChangeLog
@@ -1,3 +1,12 @@
+2006-07-17 Li Guanglei <guanglei@cn.ibm.com>
+
+ * syscalls.stp: make sys_acct, sys_add_key, sys_keyctl
+ and sys_modify_ldt optional on ppc64 since they are
+ weak symbol.
+ * ppc64/syscalls.stp: remove syscall.acct, syscall.add_key
+ and syscall.umask since they are already defined in
+ syscalls.stp
+
2006-07-04 Martin Hunt <hunt@redhat.com>
* syscalls.stp, syscalls2.stp: Use user_string_quoted().
diff --git a/tapset/ppc64/syscalls.stp b/tapset/ppc64/syscalls.stp
index 5dc993c9..8364a334 100644
--- a/tapset/ppc64/syscalls.stp
+++ b/tapset/ppc64/syscalls.stp
@@ -984,20 +984,6 @@ probe syscall.compat_sys_socketcall.return =
retstr = returnstr(1)
}
-
-# acct _______________________________________________________
-# long sys_acct(const char __user *name)
-
-probe syscall.acct = kernel.function("sys_acct") ? {
- name = "acct"
- filename = user_string($name)
- argstr = filename
-}
-probe syscall.acct.return = kernel.function("sys_acct").return ? {
- name = "acct"
- retstr = returnstr(1)
-}
-
#sys32_open _______________________________________________________
# asmlinkage long sys32_open(const char * filename, int flags, int mode)
probe syscall.sys32_open = kernel.function("sys32_open") ? {
@@ -1082,25 +1068,6 @@ probe syscall.ppc_rtas.return = kernel.function("ppc_rtas").return {
#
# These system calls i(to eof) are removed in kernel version > 2.6.9
#
-# add_key ____________________________________________________
-# long sys_add_key(const char __user *_type,
-# const char __user *_description,
-# const void __user *_payload,
-# size_t plen,
-# key_serial_t ringid)
-probe syscall.add_key = kernel.function("sys_add_key") ? {
- name = "add_key"
- type_uaddr = $_type
- description_auddr = $_description
- payload_uaddr = $_payload
- plen = $plen
- ringid = $ringid
- argstr = "add_key"
-}
-probe syscall.add_key.return = kernel.function("sys_add_key").return ? {
- name = "add_key"
- retstr = returnstr(1)
-}
# quotactl ___________________________________________________
#
@@ -1145,22 +1112,6 @@ probe syscall.request_key.return = kernel.function("sys_request_key").return ? {
name = "request_key"
retstr = returnstr(1)
}
-# umask ______________________________________________________
-#
-# asmlinkage long
-# sys_umask(int mask)
-#
-probe syscall.umask = kernel.function("sys_umask") ? {
- name = "umask"
- mask = $mask
- argstr = sprintf("%#o", $mask)
-}
-probe syscall.umask.return =
- kernel.function("sys_umask").return {
- name = "umask"
- retstr = returnstr(3)
-}
-
# sys32_execve ________________________________________
#
diff --git a/tapset/syscalls.stp b/tapset/syscalls.stp
index a5057cdf..3b14c2e6 100644
--- a/tapset/syscalls.stp
+++ b/tapset/syscalls.stp
@@ -55,12 +55,12 @@ probe syscall.access.return = kernel.function("sys_access").return {
# acct _______________________________________________________
# long sys_acct(const char __user *name)
-probe syscall.acct = kernel.function("sys_acct") {
+probe syscall.acct = kernel.function("sys_acct") ? {
name = "acct"
filename = user_string($name)
argstr = user_string_quoted($name)
}
-probe syscall.acct.return = kernel.function("sys_acct").return {
+probe syscall.acct.return = kernel.function("sys_acct").return ? {
name = "acct"
retstr = returnstr(1)
}
@@ -72,7 +72,7 @@ probe syscall.acct.return = kernel.function("sys_acct").return {
# size_t plen,
# key_serial_t ringid)
#
-probe syscall.add_key = kernel.function("sys_add_key") {
+probe syscall.add_key = kernel.function("sys_add_key") ? {
name = "add_key"
type_uaddr = $_type
description_auddr = $_description
@@ -85,7 +85,7 @@ probe syscall.add_key = kernel.function("sys_add_key") {
text_strn(user_string($_payload),20,1),
$plen, $ringid)
}
-probe syscall.add_key.return = kernel.function("sys_add_key").return {
+probe syscall.add_key.return = kernel.function("sys_add_key").return ? {
name = "add_key"
retstr = returnstr(1)
}
@@ -1503,7 +1503,7 @@ probe syscall.kexec_load.return = kernel.function("sys_kexec_load").return ? {
# unsigned long arg4,
# unsigned long arg5)
#
-probe syscall.keyctl = kernel.function("sys_keyctl") {
+probe syscall.keyctl = kernel.function("sys_keyctl") ? {
name = "keyctl"
option = $option
arg2 = $arg2
@@ -1512,7 +1512,7 @@ probe syscall.keyctl = kernel.function("sys_keyctl") {
arg5 = $arg5
argstr = sprintf("%d", $option)
}
-probe syscall.keyctl.return = kernel.function("sys_keyctl").return {
+probe syscall.keyctl.return = kernel.function("sys_keyctl").return ? {
name = "keyctl"
retstr = returnstr(1)
}
@@ -1941,14 +1941,14 @@ probe syscall.mmap2.return = kernel.function("sys_mmap2").return ? {
# modify_ldt _________________________________________________
# int sys_modify_ldt(int func, void __user *ptr, unsigned long bytecount)
#
-probe syscall.modify_ldt = kernel.function("sys_modify_ldt") {
+probe syscall.modify_ldt = kernel.function("sys_modify_ldt") ? {
name = "modify_ldt"
func = $func
ptr_uaddr = $ptr
bytecount = $bytecount
argstr = sprintf("%d, %p, %d", $func, $ptr, $bytecount)
}
-probe syscall.modify_ldt.return = kernel.function("sys_modify_ldt").return {
+probe syscall.modify_ldt.return = kernel.function("sys_modify_ldt").return ? {
name = "modify_ldt"
retstr = returnstr(1)
}