summaryrefslogtreecommitdiffstats
path: root/tapset/x86_64
diff options
context:
space:
mode:
authorhunt <hunt>2007-07-31 16:20:30 +0000
committerhunt <hunt>2007-07-31 16:20:30 +0000
commita968ea63067cb079cbd1608804ec80c36026f0ab (patch)
tree3f39852ec51e7e39ce69a0ec1d39449ef56b1067 /tapset/x86_64
parent291f7a3a00b127c0128434c7af7923331ef34bd7 (diff)
downloadsystemtap-steved-a968ea63067cb079cbd1608804ec80c36026f0ab.tar.gz
systemtap-steved-a968ea63067cb079cbd1608804ec80c36026f0ab.tar.xz
systemtap-steved-a968ea63067cb079cbd1608804ec80c36026f0ab.zip
2007-07-31 Martin Hunt <hunt@redhat.com>
* */syscalls.stp: Added mmap functions. Continued moving common compatibility functions to the main tapset. * aux_syscalls.stp (_shmat_flags_str): New. (__get_compat_argv): New. * syscalls.stp (adjtimex): Just print hex argument. (compat_adjtimex): New. (clock_getres): Also probe compat_clock_getres. (clock_gettime): Also probe compat funcs. (compat_clock_nanosleep): New. (compat_execve): New. (fstatat): New. (get[e][gu]id): Also probe sys32. (getsockopt): Make optional. Also probe compat. (mmap, mmap2): These are arch-specific, so move to individual architecture subdirs. (compat_sys_msgctl): New. (compat_sys_msgrcv): New. (compat_sys_msgsnd): New. * syscalls.stp (pread32): Remove. It calls pread64 . (quotactl): Make optional. (recv): Probe correct function. (recvfrom): Fix args. (compat_sys_recvmsg): New. (semctl): Make optional. (compat_sys_semctl): New. (semget): Make optional. (semop): Make optional. (semtimedop): Make optional. (compat_sys_semtimedop): New. (send): Make optional. (sendmsg): Make optional. (compat_sys_sendmsg): New. (sendto): Make optional. (setsockopt): Make optional. Add compat. (shmat): New. (compat_sys_shmat): New. (shmctl): New. (compat_sys_shmctl): New. (shmdt): New. (shmget): New. (shutdown): Make optional. (socket): Make optional. (socketpair): Make optional. (swapoff): Make optional. (swapon): Make optional. (sysctl): Add probe on sys32.
Diffstat (limited to 'tapset/x86_64')
-rw-r--r--tapset/x86_64/syscalls.stp22
1 files changed, 22 insertions, 0 deletions
diff --git a/tapset/x86_64/syscalls.stp b/tapset/x86_64/syscalls.stp
index e97a941e..de070a7d 100644
--- a/tapset/x86_64/syscalls.stp
+++ b/tapset/x86_64/syscalls.stp
@@ -1,3 +1,5 @@
+# x86_64-specific system calls
+
# arch_prctl _________________________________________________
# long sys_arch_prctl(int code, unsigned long addr)
#
@@ -47,4 +49,24 @@ probe syscall.sigaltstack.return = kernel.function("sys_sigaltstack").return {
retstr = returnstr(1)
}
+# mmap
+# long sys_mmap(unsigned long addr, unsigned long len,
+# unsigned long prot, unsigned long flags,
+# unsigned long fd, unsigned long off)
+probe syscall.mmap = kernel.function("sys_mmap") ? {
+ name = "mmap"
+ start = $addr
+ len = $len
+ prot = $prot
+ flags = $flags
+ fd = $fd
+ offset = $off
+ argstr = sprintf("%p, %d, %s, %s, %d, %d", $addr, $len,
+ _mprotect_prot_str($prot), _mmap_flags($flags), $fd, $off)
+}
+
+probe syscall.mmap.return = kernel.function("sys_mmap").return ? {
+ name = "mmap"
+ retstr = returnstr(2)
+}