summaryrefslogtreecommitdiffstats
path: root/tapset/x86_64
diff options
context:
space:
mode:
authorhien <hien>2006-03-09 21:31:07 +0000
committerhien <hien>2006-03-09 21:31:07 +0000
commitefcbce4e81d79aaa1ef92748d188f2f118443b7e (patch)
tree478fe9d873ccd9506581a83720e6b4867747a51a /tapset/x86_64
parent49f3d7e995de5fba2cab2365b4ebc8cc8c0884c4 (diff)
downloadsystemtap-steved-efcbce4e81d79aaa1ef92748d188f2f118443b7e.tar.gz
systemtap-steved-efcbce4e81d79aaa1ef92748d188f2f118443b7e.tar.xz
systemtap-steved-efcbce4e81d79aaa1ef92748d188f2f118443b7e.zip
Sync up with changes for i686
Diffstat (limited to 'tapset/x86_64')
-rw-r--r--tapset/x86_64/syscalls.stp338
1 files changed, 213 insertions, 125 deletions
diff --git a/tapset/x86_64/syscalls.stp b/tapset/x86_64/syscalls.stp
index 4dde23f6..20f22c66 100644
--- a/tapset/x86_64/syscalls.stp
+++ b/tapset/x86_64/syscalls.stp
@@ -124,14 +124,90 @@ probe syscall.setgroups16.return = kernel.function("sys_setgroups16").return {
probe syscall.stat = kernel.function("sys_stat") {
name = "stat"
filename_uaddr = $filename
+ filename = user_string($filename)
buf_uaddr = $statbuf
- argstr = ""
+ argstr = sprintf("%s, [0x%x]", filename, buf_uaddr)
}
probe syscall.stat.return = kernel.function("sys_stat").return {
name = "stat"
returnp = 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"
+ returnp = 1
+}
+
+# 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"
+ returnp = 1
+}
+
+# quotactl ___________________________________________________
+#
+# asmlinkage long
+# sys_quotactl(unsigned int cmd,
+# const char __user *special,
+# qid_t id,
+# void __user *addr)
+#
+probe syscall.quotactl = kernel.function("sys_quotactl") {
+ name = "quotactl"
+ cmd = $cmd
+ cmd_str = _quotactl_cmd_str($cmd)
+ special_str = user_string($special)
+ id = $id
+ addr_uaddr = $addr
+ argstr = sprintf("%s, %s, 0x%x, [0x%x]", cmd_str, special_str,
+ id, addr_uaddr)
+}
+probe syscall.quotactl.return = kernel.function("sys_quotactl").return {
+ name = "quotactl"
+ returnp = 1
+}
+# request_key ________________________________________________
+#
+# asmlinkage long
+# sys_request_key(const char __user *_type,
+# const char __user *_description,
+# const char __user *_callout_info,
+# key_serial_t destringid)
+#
+probe syscall.request_key = kernel.function("sys_request_key") {
+ name = "request_key"
+ type_uaddr = $_type
+ description_uaddr = $_description
+ callout_info_uaddr = $_callout_info
+ destringid = $destringid
+ argstr = sprintf("[0x%x], [0x%x], [0x%x], 0x%x", type_uaddr,
+ description_uaddr, callout_info_uaddr, destringid)
+}
+probe syscall.request_key.return = kernel.function("sys_request_key").return {
+ name = "request_key"
+ returnp = 1
+}
#
# OLD STUFF here, need more works
@@ -142,15 +218,17 @@ probe syscall.stat.return = kernel.function("sys_stat").return {
* unsigned long addr)
*/
probe kernel.syscall.arch_prctl =
- kernel.function("sys_arch_prctl") {
- name = "arch_prctl"
- code = $code
- addr = $addr
- }
+ kernel.function("sys_arch_prctl") {
+ name = "arch_prctl"
+ code = $code
+ addr = $addr
+ argstr = sprintf("%d, 0x%x", $code, $addr)
+}
probe kernel.syscall.arch_prctl.return =
kernel.function("sys_arch_prctl").return {
- name = "arch_prctl.return"
- }
+ name = "arch_prctl"
+ returnp = 1
+}
# get_mempolicy ______________________________________________
/*
* asmlinkage long
@@ -161,33 +239,35 @@ probe kernel.syscall.arch_prctl.return =
* unsigned long flags)
*/
probe kernel.syscall.get_mempolicy =
- kernel.function("sys_get_mempolicy") {
- name = "get_mempolicy"
- policy_uaddr = $policy
- nmask_uaddr = $nmask
- maxnode = $maxnode
- addr = $addr
- flags = $flags
- }
+ kernel.function("sys_get_mempolicy") {
+ name = "get_mempolicy"
+ policy_uaddr = $policy
+ nmask_uaddr = $nmask
+ maxnode = $maxnode
+ addr = $addr
+ flags = $flags
+ argstr = sprintf("[0x%x], [0x%x], %d, 0x%x, %d", policy_uaddr,
+ nmask_uaddr, $maxnode, $addr, $flags)
+}
probe kernel.syscall.get_mempolicy.return =
- kernel.function("sys_get_mempolicy").return {
- name = "get_mempolicy.return"
- }
+ kernel.function("sys_get_mempolicy").return {
+ name = "get_mempolicy"
+ returnp = 1
+}
# iopl _______________________________________________________
/*
* asmlinkage long
* sys_iopl(unsigned long unused)
*/
-probe kernel.syscall.iopl =
- kernel.function("sys_iopl") {
- name = "iopl"
- level = $level
- regs_uaddr = $regs
- }
-probe kernel.syscall.iopl.return =
- kernel.function("sys_iopl").return {
- name = "iopl.return"
- }
+probe kernel.syscall.iopl = kernel.function("sys_iopl") {
+ name = "iopl"
+ level = $level
+ argstr = string($level)
+}
+probe kernel.syscall.iopl.return = kernel.function("sys_iopl").return {
+ name = "iopl"
+ returnp = 1
+}
# mbind ______________________________________________________
/*
* asmlinkage long
@@ -198,20 +278,21 @@ probe kernel.syscall.iopl.return =
* unsigned long maxnode,
* unsigned flags)
*/
-probe kernel.syscall.mbind =
- kernel.function("sys_mbind") {
- name = "mbind"
- start = $start
- len = $len
- mode = $mode
- nmask_uaddr = $nmask
- maxnode = $maxnode
- flags = $flags
- }
-probe kernel.syscall.mbind.return =
- kernel.function("sys_mbind").return {
- name = "mbind.return"
- }
+probe kernel.syscall.mbind = kernel.function("sys_mbind") {
+ name = "mbind"
+ start = $start
+ len = $len
+ mode = $mode
+ nmask_uaddr = $nmask
+ maxnode = $maxnode
+ flags = $flags
+ argstr = sprintf("%d, %d, %d, [0x%x], %d, %d", $start, $len, $mode,
+ nmask_uaddr, $maxnode, $flags)
+}
+probe kernel.syscall.mbind.return = kernel.function("sys_mbind").return {
+ name = "mbind"
+ returnp = 1
+}
# mmap _______________________________________________________
/*
* long
@@ -222,34 +303,36 @@ probe kernel.syscall.mbind.return =
* unsigned long fd,
* unsigned long off)
*/
-probe kernel.syscall.mmap =
- kernel.function("sys_mmap") {
- name = "mmap"
- addr = $addr
- len = $len
- prot = $prot
- flags = $flags
- fd = $fd
- off = $off
- }
-probe kernel.syscall.mmap.return =
- kernel.function("sys_mmap").return {
- name = "mmap.return"
- }
+probe kernel.syscall.mmap = kernel.function("sys_mmap") {
+ name = "mmap"
+ addr = $addr
+ len = $len
+ prot = $prot
+ flags = $flags
+ fd = $fd
+ off = $off
+ argstr = sprintf("0x%x, %d, %d, %d, %d, %d", $addr, $len,
+ $prot, $flags, $fd, $off)
+}
+probe kernel.syscall.mmap.return = kernel.function("sys_mmap").return {
+ name = "mmap"
+ returnp = 1
+}
# rt_sigreturn _______________________________________________
/*
* asmlinkage int
* sys_rt_sigreturn(unsigned long __unused)
*/
-probe kernel.syscall.rt_sigreturn =
- kernel.function("sys_rt_sigreturn") {
- name = "rt_sigreturn"
- regs_uaddr = $regs
- }
+probe kernel.syscall.rt_sigreturn = kernel.function("sys_rt_sigreturn") {
+ name = "rt_sigreturn"
+ regs = $regs
+ argstr = ""
+}
probe kernel.syscall.rt_sigreturn.return =
- kernel.function("sys_rt_sigreturn").return {
- name = "rt_sigreturn.return"
- }
+ kernel.function("sys_rt_sigreturn").return {
+ name = "rt_sigreturn"
+ returnp = 1
+}
# sched_setaffinity __________________________________________
/*
* asmlinkage long
@@ -258,18 +341,21 @@ probe kernel.syscall.rt_sigreturn.return =
* unsigned long __user *user_mask_ptr)
*/
probe kernel.syscall.sched_setaffinity =
- kernel.function("sys_sched_setaffinity") {
- name = "sched_setaffinity"
- pid = $pid
- /*
- * doesnt like $len on x86_64 ????
- */
- mask_uaddr = $user_mask_ptr
- }
+ kernel.function("sys_sched_setaffinity") {
+ name = "sched_setaffinity"
+ pid = $pid
+ len = $len
+ /*
+ * doesnt like $len on x86_64 ????
+ */
+ mask_uaddr = $user_mask_ptr
+ argstr = sprintf("%d, %d, [0x%x]", $pid, $len, mask_uaddr)
+}
probe kernel.syscall.sched_setaffinity.return =
- kernel.function("sys_sched_setaffinity").return {
- name = "sched_setaffinity.return"
- }
+ kernel.function("sys_sched_setaffinity").return {
+ name = "sched_setaffinity"
+ returnp = 1
+}
# set_mempolicy ______________________________________________
/*
* asmlinkage long
@@ -277,76 +363,78 @@ probe kernel.syscall.sched_setaffinity.return =
* unsigned long __user *nmask,
* unsigned long maxnode)
*/
-probe kernel.syscall.set_mempolicy =
- kernel.function("sys_set_mempolicy") {
- name = "set_mempolicy"
- mode = $mode
- nmask_uaddr = $nmask
- maxnode = $maxnode
- }
+probe kernel.syscall.set_mempolicy = kernel.function("sys_set_mempolicy") {
+ name = "set_mempolicy"
+ mode = $mode
+ nmask_uaddr = $nmask
+ maxnode = $maxnode
+ argstr = sprintf("%d, [0x%x], %d", $mode, nmask_uaddr, $maxnode)
+}
probe kernel.syscall.set_mempolicy.return =
kernel.function("sys_set_mempolicy").return {
- name = "set_mempolicy.return"
- }
+ name = "set_mempolicy"
+ returnp = 1
+}
# sigaltstack ________________________________________________
/*
* asmlinkage int
* sys_sigaltstack(unsigned long ebx)
*/
-probe kernel.syscall.sigaltstack =
- kernel.function("sys_sigaltstack") {
- name = "sigaltstack"
- uss_uaddr = $uss
- uoss_uaddr = $uoss
- regs_uaddr = $regs
- }
+probe kernel.syscall.sigaltstack = kernel.function("sys_sigaltstack") {
+ name = "sigaltstack"
+ uss_uaddr = $uss
+ uoss_uaddr = $uoss
+ regs_uaddr = $regs
+ argstr = sprintf("[0x%x], [0x%x]", uss_uaddr, uoss_uaddr)
+}
probe kernel.syscall.sigaltstack.return =
- kernel.function("sys_sigaltstack").return {
- name = "sigaltstack.return"
- }
+ kernel.function("sys_sigaltstack").return {
+ name = "sigaltstack"
+ returnp = 1
+}
# time64 _____________________________________________________
/*
* asmlinkage long
* sys_time64(long __user * tloc)
*/
-probe kernel.syscall.time64 =
- kernel.function("sys_time64") {
- name = "time64"
- t_uaddr = $tloc
- }
-probe kernel.syscall.time64.return =
- kernel.function("sys_time64").return {
- name = "time64.return"
- }
+probe kernel.syscall.time64 = kernel.function("sys_time64") {
+ name = "time64"
+ t_uaddr = $tloc
+ argstr = sprintf("[0x%x]", t_uaddr)
+}
+probe kernel.syscall.time64.return = kernel.function("sys_time64").return {
+ name = "time64"
+ returnp = 1
+}
# tux ________________________________________________________
/*
* asmlinkage long
* sys_tux (unsigned int action,
* user_req_t *u_info)
*/
-probe kernel.syscall.tux =
- kernel.function("sys_tux") {
- name = "tux"
- action = $action
- u_info_uaddr = $u_info
- }
-probe kernel.syscall.tux.return =
- kernel.function("sys_tux").return {
- name = "tux.return"
- }
+probe kernel.syscall.tux = kernel.function("sys_tux") {
+ name = "tux"
+ action = $action
+ u_info_uaddr = $u_info
+ argstr = sprintf("%d, [0x%x]", $action, u_info_uaddr)
+}
+probe kernel.syscall.tux.return = kernel.function("sys_tux").return {
+ name = "tux"
+ returnp = 1
+}
# umask ______________________________________________________
/*
* asmlinkage long
* sys_umask(int mask)
*/
-probe kernel.syscall.umask =
- kernel.function("sys_umask") {
- name = "umask"
- /*
- * doesnt like $mask on x86_64 ????
- */
- }
-probe kernel.syscall.umask.return =
- kernel.function("sys_umask").return {
- name = "umask.return"
- }
+probe kernel.syscall.umask = kernel.function("sys_umask") {
+ name = "umask"
+ /*
+ * doesnt like $mask on x86_64 ????
+ */
+ argstr = string($mask)
+}
+probe kernel.syscall.umask.return = kernel.function("sys_umask").return {
+ name = "umask"
+ returnp = 1
+}