TAPSET::SYSCALLS(3stap)

✨ NAME ✨

tapset::syscalls β€” systemtap syscall tapset πŸ’–

πŸ’… DESCRIPTION πŸ’…

okay bestie, so here's the whole vibe: this page is your cheat sheet for all the syscall probes you can hook into with systemtap, plus the convenience variables they give you. by default, every syscall probe comes with name and argstr convenience variables β€” but we're not listing those here because otherwise this would be a whole trilogy, and it already kind of is. also, the non-dwarf-based nd_syscall probes are supposed to have the same convenience variables, fr fr. no cap.

πŸ¦‹ syscall probes & their convenience variables πŸ¦‹

  • syscall.accept β€” addr_uaddr, addrlen_uaddr, sockfd
  • syscall.accept4 β€” addr_uaddr, addrlen_uaddr, flags, flags_str, sockfd
  • syscall.access β€” mode, mode_str, pathname, pathname_unquoted
  • syscall.acct β€” filename, filename_unquoted
  • syscall.add_key β€” description_uaddr, payload_uaddr, plen, ringid, type_uaddr
  • syscall.adjtimex β€” buf_str, buf_uaddr
  • syscall.alarm β€” seconds
  • syscall.arch_prctl β€” addr, code, code_str
  • syscall.bdflush β€” $id, $regs, data, data_str, func, int, pt_regs*
  • syscall.bind β€” addrlen, my_addr_uaddr, sockfd, uaddr_af, uaddr_ip, uaddr_ip_port, uaddr_ipv6_flowinfo, uaddr_ipv6_scope_id
  • syscall.bpf β€” attr_uaddr, cmd, cmd_str, size
  • syscall.brk β€” brk
  • syscall.capget β€” data_uaddr, header_uaddr
  • syscall.capset β€” data_uaddr, header_uaddr
  • syscall.chdir β€” path, path_unquoted
  • syscall.chmod β€” mode, path, path_unquoted
  • syscall.chown β€” group, owner, path, path_unquoted
  • syscall.chown16 β€” group, owner, path, path_unquoted
  • syscall.chroot β€” path, path_unquoted
  • syscall.clock_adjtime β€” clk_id, clk_id_str, tx_uaddr, tx_uaddr_str
  • syscall.clock_getres β€” clk_id, clk_id_str, res_uaddr
  • syscall.clock_gettime β€” clk_id, clk_id_str, tp_uaddr
  • syscall.clock_nanosleep β€” clk_id, clk_id_str, flags, flags_str, rem_uaddr, req_str, req_uaddr
  • syscall.clock_settime β€” clk_id, clk_id_str, tp_uaddr, tp_uaddr_str
  • syscall.clone β€” $id, $regs, child_tid_uaddr, clone_flags, int, parent_tid_uaddr, pt_regs*, stack_start
  • syscall.close β€” fd
  • syscall.compat_adjtimex β€” $id, $regs, buf_str, buf_uaddr, int, pt_regs*
  • syscall.compat_clock_nanosleep β€” $id, $regs, clk_id, clk_id_str, flags, flags_str, int, pt_regs*, rem_uaddr, req_str, req_uaddr
  • syscall.compat_execve β€” args, env_str, filename
  • syscall.compat_execveat β€” args, dirfd, dirfd_str, env_str, filename, flags, flags_str
  • syscall.compat_fadvise64 β€” $id, $regs, advice, advice_str, fd, int, len, offset, pt_regs*
  • syscall.compat_fadvise64_64 β€” $id, $regs, advice, advice_str, fd, int, len, offset, pt_regs*
  • syscall.compat_fallocate β€” $id, $regs, fd, int, len, mode, mode_str, offset, pt_regs*
  • syscall.compat_ftruncate64 β€” $id, $regs, fd, int, length, pt_regs*
  • syscall.compat_futex β€” $id, $regs, futex_uaddr, int, op, pt_regs*, uaddr2_uaddr, utime_uaddr, val3, val
  • syscall.compat_futimesat β€” $id, $regs, dirfd, dirfd_str, filename, filename_uaddr, filename_unquoted, int, pt_regs*, tvp_str, tvp_uaddr
  • syscall.compat_getitimer β€” value_uaddr, which
  • syscall.compat_lookup_dcookie β€” $id, $regs, buffer_uaddr, cookie, int, len, pt_regs*
  • syscall.compat_nanosleep β€” $id, $regs, int, pt_regs*, rem_uaddr, req_str, req_uaddr
  • syscall.compat_ppoll β€” $id, $regs, fds_uaddr, int, nfds, pt_regs*, sigmask, sigsetsize, tsp, tsp_str
  • syscall.compat_pselect6 β€” $id, $regs, exceptfds, int, nfds, pt_regs*, readfds, sigmask, timeout, timeout_str, writefds
  • syscall.compat_readahead β€” $id, $regs, count, fd, int, offset, pt_regs*
  • syscall.compat_recvmmsg β€” $id, $regs, flags, flags_str, int, mmsg_uaddr, pt_regs*, s, timeout_str, timeout_uaddr, vlen
  • syscall.compat_select β€” exceptfds_uaddr, n, readfds_uaddr, timeout_str, timeout_uaddr, writefds_uaddr
  • syscall.compat_setitimer β€” ovalue_uaddr, value_str, value_uaddr, which, which_str
  • syscall.compat_signalfd β€” flags
  • syscall.compat_sys_msgctl β€” buf_uaddr, cmd, cmd_str, msqid
  • syscall.compat_sys_msgrcv β€” msgflg, msgflg_str, msgp_uaddr, msgsz, msgtyp, msqid
  • syscall.compat_sys_msgsnd β€” msgflg, msgflg_str, msgp_uaddr, msgsz, msqid
  • syscall.compat_sys_recvmsg β€” flags, flags_str, msg_uaddr, s
  • syscall.compat_sys_semctl β€” arg, cmd, cmdstr, semid, semnum
  • syscall.compat_sys_semtimedop β€” nsops, semid, sops_uaddr, timeout_str, timeout_uaddr
  • syscall.compat_sys_sendmsg β€” flags, flags_str, msg_uaddr, s
  • syscall.compat_sys_shmat β€” shmaddr_uaddr, shmflg, shmflg_str, shmid
  • syscall.compat_sys_shmctl β€” buf_uaddr, cmd, cmd_str, shmid
  • syscall.compat_sys_utimes β€” $id, $regs, filename, filename_unquoted, int, pt_regs*, timeval, tvp_uaddr_str
  • syscall.compat_truncate64 β€” $id, $regs, int, length, path, path_uaddr, path_unquoted, pt_regs*
  • syscall.compat_utime β€” $id, $regs, actime, buf_uaddr, filename, filename_uaddr, filename_unquoted, int, modtime, pt_regs*
  • syscall.compat_utimensat β€” $id, $regs, dfd, dfd_str, filename, filename_uaddr, filename_unquoted, flags, flags_str, int, pt_regs*, tsp_str, tsp_uaddr
  • syscall.compat_vmsplice β€” $id, $regs, fd, flags, flags_str, int, iov, nr_segs, pt_regs*
  • syscall.connect β€” addrlen, serv_addr_uaddr, sockfd, uaddr_af, uaddr_ip, uaddr_ip_port, uaddr_ipv6_flowinfo, uaddr_ipv6_scope_id
  • syscall.copy_file_range β€” fd_in, fd_out, flags, len, off_in, off_out
  • syscall.creat β€” mode, pathname, pathname_unquoted
  • syscall.delete_module β€” flags, flags_str, name_user, name_user_unquoted
  • syscall.dup β€” oldfd
  • syscall.dup2 β€” flags, flags_str, newfd, oldfd
  • syscall.dup3 β€” flags, flags_str, newfd, oldfd
  • syscall.epoll_create β€” flags, size
  • syscall.epoll_ctl β€” epfd, event_uaddr, fd, op, op_str
  • syscall.epoll_pwait β€” epfd, events_uaddr, maxevents, sigmask_uaddr, sigsetsize, timeout
  • syscall.epoll_wait β€” epfd, events_uaddr, maxevents, timeout
  • syscall.eventfd β€” count, flags, flags_str
  • syscall.execve β€” args, env_str, filename
  • syscall.execveat β€” args, dirfd, dirfd_str, env_str, filename, flags, flags_str
  • syscall.exit β€” status
  • syscall.exit_group β€” status
  • syscall.faccessat β€” dirfd, dirfd_str, mode, mode_str, pathname, pathname_unquoted
  • syscall.faccessat2 β€” dirfd, dirfd_str, flags, flags_str, mode, mode_str, pathname, pathname_unquoted
  • syscall.fadvise64 β€” advice, advice_str, fd, len, offset
  • syscall.fadvise64_64 β€” $id, $regs, advice, advice_str, fd, int, len, offset, pt_regs*
  • syscall.fallocate β€” fd, len, mode, mode_str, offset
  • syscall.fanotify_init β€” event_f_flags, event_f_flags_str, flags, flags_str
  • syscall.fanotify_mark β€” dirfd, dirfd_str, fanotify_fd, flags, flags_str, mask, mask_str, pathname, pathname_unquoted
  • syscall.fchdir β€” fd
  • syscall.fchmod β€” fildes, mode
  • syscall.fchmodat β€” dirfd, dirfd_str, mode, pathname, pathname_unquoted
  • syscall.fchown β€” fd, group, owner
  • syscall.fchown16 β€” fd, group, owner
  • syscall.fchownat β€” dirfd, dirfd_str, flags, flags_str, group, owner, pathname, pathname_unquoted
  • syscall.fcntl β€” arg, cmd, cmd_str, fd
  • syscall.fdatasync β€” fd
  • syscall.fgetxattr β€” filedes, name_str, name_str_unquoted, size, value_uaddr
  • syscall.file_getattr β€” at_flags, dfd, dfd_str, dfd_str_unquoted, filename, filename_str, filename_str_unquoted, ufattr, usize
  • syscall.file_setattr β€” at_flags, dfd, dfd_str, dfd_str_unquoted, filename, filename_str, filename_str_unquoted, ufattr, usize
  • syscall.finit_module β€” fd, flags, flags_str, uargs, uargs_unquoted
  • syscall.flistxattr β€” filedes, list_uaddr, size
  • syscall.flock β€” fd, operation
  • syscall.fork β€” just the default name and argstr πŸ’…
  • syscall.fremovexattr β€” filedes, name_str, name_str_unquoted, name_uaddr
  • syscall.fsetxattr β€” filedes, flags, flags_str, name_str, name_str_unquoted, name_uaddr, size, value_str, value_uaddr
  • syscall.fstat β€” buf_uaddr, filedes
  • syscall.fstatat β€” buf_uaddr, dirfd, dirfd_str, flags, flags_str, path, path_unquoted
  • syscall.fstatfs β€” buf_uaddr, fd
  • syscall.fstatfs64 β€” buf_uaddr, fd, sz
  • syscall.fsync β€” fd
  • syscall.ftruncate β€” fd, length
  • syscall.ftruncate64 β€” $id, $regs, fd, int, length, pt_regs*
  • syscall.futex β€” futex_uaddr, op, uaddr2_uaddr, utime_uaddr, val3, val
  • syscall.futimesat β€” dirfd, dirfd_str, filename, filename_uaddr, filename_unquoted, tvp_str, tvp_uaddr
  • syscall.get_mempolicy β€” addr, flags, flags_str, maxnode, nmask_uaddr, policy_uaddr
  • syscall.get_robust_list β€” len_uaddr, list_head_uaddr, pid
  • syscall.get_thread_area β€” u_info_str, u_info_uaddr
  • syscall.getcpu β€” cpu_uaddr, node_uaddr, tcache_uaddr
  • syscall.getcwd β€” buf_uaddr, size
  • syscall.getdents β€” count, dirp_uaddr, fd
  • syscall.getegid β€” just the default name and argstr πŸ’…
  • syscall.geteuid β€” just the default name and argstr πŸ’…
  • syscall.getgid β€” just the default name and argstr πŸ’…
  • syscall.getgroups β€” list_uaddr, size
  • syscall.getitimer β€” value_uaddr, which
  • syscall.getpeername β€” name_uaddr, namelen_uaddr, s
  • syscall.getpgid β€” pid
  • syscall.getpgrp β€” just the default name and argstr πŸ’…
  • syscall.getpid β€” just the default name and argstr πŸ’…
  • syscall.getppid β€” just the default name and argstr πŸ’…
  • syscall.getpriority β€” which, who
  • syscall.getrandom β€” buf, buf_unquoted, count, flags, flags_str
  • syscall.getresgid β€” egid_uaddr, rgid_uaddr, sgid_uaddr
  • syscall.getresuid β€” euid_uaddr, ruid_uaddr, suid_uaddr
  • syscall.getrlimit β€” resource, rlim_uaddr
  • syscall.getrusage β€” usage_uaddr, who, who_str
  • syscall.getsid β€” pid
  • syscall.getsockname β€” name_uaddr, namelen_uaddr, s
  • syscall.getsockopt β€” fd, level, level_str, optlen_uaddr, optname, optname_str, optval_uaddr
  • syscall.gettid β€” just the default name and argstr πŸ’…
  • syscall.gettimeofday β€” tv_uaddr, tz_uaddr
  • syscall.getuid β€” just the default name and argstr πŸ’…
  • syscall.getxattr β€” name_str, name_str_unquoted, path, path_unquoted, size, value_uaddr

so. the roster. ✨ every syscall.* probe alias this tapset gives you, plus every single arg each one hands over β€” all of them, in order, no skipping, no "etc." i know it's a lot. we're doing it anyway. πŸ’…

  • syscall.init_module β€” len, uargs, uargs_unquoted, umod_uaddr
  • syscall.inotify_add_watch β€” fd, mask, mask_str, path, path_uaddr, path_unquoted
  • syscall.inotify_init β€” flags
  • syscall.inotify_rm_watch β€” fd, wd
  • syscall.io_cancel β€” ctx_id, iocb_uaddr, result_uaddr
  • syscall.io_destroy β€” ctx
  • syscall.io_getevents β€” ctx_id, events_uaddr, min_nr, nr, timeout_uaddr, timestr
  • syscall.io_setup β€” ctxp_uaddr, maxevents
  • syscall.io_submit β€” ctx_id, iocbpp_uaddr, nr
  • syscall.ioctl β€” argp, fd, request
  • syscall.ioperm β€” from, num, turn_on
  • syscall.iopl β€” level
  • syscall.ioprio_get β€” which, which_str, who
  • syscall.ioprio_set β€” ioprio, ioprio_str, which, which_str, who
  • syscall.kcmp β€” idx1, idx2, pid1, pid2, type, type_str
  • syscall.kexec_file_load β€” cmdline, cmdline_len, cmdline_unquoted, flags, flags_str, initrd_fd, kernel_fd
  • syscall.kexec_load β€” entry, flags, flags_str, nr_segments, segments_uaddr
  • syscall.keyctl β€” arg2, arg3, arg4, arg5, option
  • syscall.kill β€” pid, sig, sig_name
  • syscall.lchown β€” group, owner, path, path_unquoted
  • syscall.lchown16 β€” group, owner, path, path_unquoted
  • syscall.lgetxattr β€” name_str, name_str_unquoted, path, path_unquoted, size, value_uaddr
  • syscall.link β€” newpath, newpath_unquoted, oldpath, oldpath_unquoted
  • syscall.linkat β€” flags, flags_str, newdirfd, newdirfd_str, newpath, newpath_unquoted, olddirfd, olddirfd_str, oldpath, oldpath_unquoted
  • syscall.listen β€” backlog, sockfd
  • syscall.listxattr β€” list_uaddr, path, path_uaddr, path_unquoted, size
  • syscall.llistxattr β€” list_uaddr, path, path_uaddr, path_unquoted, size
  • syscall.llseek β€” fd, offset_high, offset_low, result_uaddr, whence, whence_str
  • syscall.lookup_dcookie β€” $id, $regs, buffer_uaddr, cookie, int, len, pt_regs*
  • syscall.lremovexattr β€” name_str, name_str_unquoted, name_uaddr, path, path_uaddr, path_unquoted
  • syscall.lseek β€” fildes, offset, whence, whence_str
  • syscall.lsetxattr β€” flags, flags_str, name_str, name_str_unquoted, name_uaddr, path, path_uaddr, path_unquoted, size, value_str, value_uaddr
  • syscall.lsm_get_self_attr β€” $id, $regs, attr, ctx, flags, int, pt_regs*, size
  • syscall.lsm_set_self_attr β€” $id, $regs, attr, ctx, flags, int, pt_regs*, size
  • syscall.lstat β€” buf_uaddr, path, path_unquoted
  • syscall.madvise β€” advice, advice_str, length, start
  • syscall.mbind β€” flags, flags_str, len, maxnode, mode, mode_str, nmask_uaddr, start
  • syscall.membarrier β€” cmd, cmd_str, flags
  • syscall.memfd_create β€” flags, flags_str, uname, uname_unquoted
  • syscall.memfd_secret β€” flags, flags_str
  • syscall.migrate_pages β€” maxnode, new_nodes, old_nodes, pid
  • syscall.mincore β€” length, start, vec_uaddr
  • syscall.mkdir β€” mode, pathname, pathname_uaddr, pathname_unquoted
  • syscall.mkdirat β€” dirfd, dirfd_str, mode, pathname, pathname_unquoted
  • syscall.mknod β€” dev, mode, mode_str, pathname, pathname_unquoted
  • syscall.mknodat β€” dev, dirfd, dirfd_str, mode, mode_str, pathname, pathname_unquoted
  • syscall.mlock β€” addr, len
  • syscall.mlock2 β€” addr, flags, flags_str, len
  • syscall.mlockall β€” flags, flags_str
  • syscall.mmap2 β€” fd, flags, flags_str, length, pgoffset, prot, prot_str, start
  • syscall.modify_ldt β€” bytecount, func, ptr_uaddr
  • syscall.mount β€” data, data_unquoted, filesystemtype, filesystemtype_unquoted, mountflags, mountflags_str, source, source_unquoted, target, target_unquoted
  • syscall.move_pages β€” flags, flags_str, nodes, nr_pages, pages, pid, status
  • syscall.mprotect β€” addr, len, prot, prot_str
  • syscall.mq_getsetattr β€” mqdes, u_mqstat_uaddr, u_omqstat_uaddr
  • syscall.mq_notify β€” mqdes, notification_uaddr
  • syscall.mq_open β€” filename, filename_unquoted, mode, name_uaddr, oflag, oflag_str, u_attr_uaddr
  • syscall.mq_timedreceive β€” abs_timeout_uaddr, mqdes, msg_len, msg_prio_uaddr, msg_ptr_uaddr
  • syscall.mq_timedsend β€” abs_timeout_uaddr, mqdes, msg_len, msg_prio, msg_ptr_uaddr
  • syscall.mq_unlink β€” u_name, u_name_uaddr, u_name_unquoted
  • syscall.mremap β€” flags, flags_str, new_address, new_size, old_address, old_size
  • syscall.msgctl β€” buf_uaddr, cmd, cmd_str, msqid
  • syscall.msgget β€” key, key_str, msgflg, msgflg_str
  • syscall.msgrcv β€” msgflg, msgflg_str, msgp_uaddr, msgsz, msgtyp, msqid
  • syscall.msgsnd β€” msgflg, msgflg_str, msgp_uaddr, msgsz, msqid
  • syscall.msync β€” flags, flags_str, length, start
  • syscall.munlock β€” addr, len
  • syscall.munlockall β€” no args, she just goes πŸ’…
  • syscall.munmap β€” length, start
  • syscall.name_to_handle_at β€” dfd, dfd_str, flags, flags_str, handle_uaddr, mnt_id_uaddr, pathname, pathname_unquoted
  • syscall.nanosleep β€” rem_uaddr, req_str, req_uaddr
  • syscall.ni_syscall β€” no args at all, iconic minimalism ✨
  • syscall.nice β€” inc
  • syscall.open β€” filename, filename_unquoted, flags, flags_str, mode
  • syscall.open_by_handle_at β€” flags, flags_str, handle_uaddr, mount_dfd, mount_dfd_str
  • syscall.openat β€” dfd, dfd_str, filename, filename_unquoted, flags, flags_str, mode
  • syscall.pause β€” no args, she's literally just vibing 🫢
  • syscall.perf_event_open β€” attr_uaddr, cpu, flags, flags_str, group_fd, pid
  • syscall.personality β€” persona
  • syscall.pipe β€” fildes_uaddr, flag_str, flags, pipe0, pipe1
  • syscall.pivot_root β€” new_root_str, new_root_str_unquoted, old_root_str, old_root_str_unquoted
  • syscall.pkey_alloc β€” flags, init_val, init_val_str
  • syscall.pkey_free β€” pkey
  • syscall.pkey_mprotect β€” addr, len, pkey, prot, prot_str
  • syscall.poll β€” nfds, timeout, ufds_uaddr
  • syscall.ppoll β€” fds_uaddr, nfds, sigmask, sigsetsize, tsp, tsp_str
  • syscall.prctl β€” arg2, arg3, arg4, arg5, option
  • syscall.pread β€” buf_uaddr, count, fd, offset
  • syscall.preadv β€” count, fd, offset, vector_uaddr
  • syscall.preadv2 β€” count, fd, flags, flags_str, offset, vector_uaddr
  • syscall.prlimit64 β€” new_rlim_str, new_rlim_uaddr, old_rlim_uaddr, pid, resource, resource_str
  • syscall.process_vm_readv β€” flags, liovcnt, local_iov_uaddr, pid, remote_iov_uaddr, riovcnt
  • syscall.process_vm_writev β€” flags, liovcnt, local_iov_uaddr, pid, remote_iov_uaddr, riovcnt
  • syscall.pselect6 β€” exceptfds, nfds, readfds, sigmask, timeout, timeout_str, writefds
  • syscall.ptrace β€” addr, data, pid, request
  • syscall.pwrite β€” buf_str, buf_uaddr, count, fd, offset
  • syscall.pwrite32 β€” $id, $regs, buf_str, buf_uaddr, count, fd, int, offset, pt_regs*
  • syscall.pwritev β€” count, fd, offset, vector_uaddr
  • syscall.pwritev2 β€” count, fd, flags, flags_str, offset, vector_uaddr
  • syscall.quotactl β€” addr_uaddr, cmd, cmd_str, id, special, special_str, special_str_unquoted
  • syscall.read β€” buf_uaddr, count, fd
  • syscall.readahead β€” count, fd, offset
  • syscall.readdir β€” count, dirent, fd
  • syscall.readlink β€” buf_uaddr, bufsiz, path, path_unquoted
  • syscall.readlinkat β€” buf_uaddr, bufsiz, dfd, dfd_str, path, path_unquoted
  • syscall.readv β€” count, fd, vector_uaddr
  • syscall.reboot β€” arg_uaddr, flag, flag_str, magic2, magic2_str, magic, magic_str
  • syscall.recv β€” buf_uaddr, flags, flags_str, len, s
  • syscall.recvfrom β€” addr_uaddr, addrlen_uaddr, buf_uaddr, flags, flags_str, len, s
  • syscall.recvmmsg β€” flags, flags_str, mmsg_uaddr, s, timeout_str, timeout_uaddr, vlen
  • syscall.recvmsg β€” flags, flags_str, msg_uaddr, s
  • syscall.remap_file_pages β€” flags, flags_str, pgoff, prot, prot_str, size, start
  • syscall.removexattr β€” name_str, name_str_unquoted, path, path_unquoted
  • syscall.rename β€” newpath, newpath_unquoted, oldpath, oldpath_unquoted
  • syscall.renameat β€” newdfd, newdfd_str, newname, newname_str, newname_str_unquoted, olddfd, olddfd_str, oldname, oldname_str, oldname_str_unquoted
  • syscall.renameat2 β€” flags, flags_str, newdfd, newdfd_str, newname, newname_str, newname_str_unquoted, olddfd, olddfd_str, oldname, oldname_str, oldname_str_unquoted
  • syscall.request_key β€” callout_info_uaddr, description_str, description_str_unquoted, description_uaddr, destringid, type_str, type_str_unquoted, type_uaddr
  • syscall.restart_syscall β€” no args, just a fresh start bestie 🌈
  • syscall.rmdir β€” pathname, pathname_unquoted
  • syscall.rt_sigaction β€” act_str, act_uaddr, oact_uaddr, sig, sig_str, sigsetsize
  • syscall.rt_sigaction32 β€” act_str, act_uaddr, oact_uaddr, sig, sig_str, sigsetsize
  • syscall.rt_sigpending β€” set_uaddr, sigsetsize
  • syscall.rt_sigprocmask β€” how, how_str, oldset_uaddr, set_str, set_uaddr, sigsetsize
  • syscall.rt_sigqueueinfo β€” pid, sig, sig_name, siginfo_str, uinfo_uaddr
  • syscall.rt_sigsuspend β€” set_str, set_uaddr, sigsetsize
  • syscall.rt_sigtimedwait β€” sigsetsize, uinfo_str, uinfo_uaddr, uthese_str, uthese_uaddr, uts_str, uts_uaddr
  • syscall.rt_tgsigqueueinfo β€” sig, sig_str, tgid, tid, uinfo_str, uinfo_uaddr
  • syscall.sched_get_priority_max β€” policy, policy_str
  • syscall.sched_get_priority_min β€” policy, policy_str
  • syscall.sched_getaffinity β€” len, mask_uaddr, pid
  • syscall.sched_getattr β€” flags, pid, sched_attr_str, sched_attr_uaddr, size
  • syscall.sched_getparam β€” p_uaddr, pid
  • syscall.sched_getscheduler β€” pid
  • syscall.sched_rr_get_interval β€” pid, tp_uaddr
  • syscall.sched_setaffinity β€” len, mask_uaddr, pid
  • syscall.sched_setattr β€” flags, pid, sched_attr_str, sched_attr_uaddr
  • syscall.sched_setparam β€” p_uaddr, pid
  • syscall.sched_setscheduler β€” p_uaddr, pid, policy, policy_str
  • syscall.sched_yield β€” no args, she simply yields, queen behavior πŸ‘‘
  • syscall.seccomp β€” flags, flags_str, op, op_str, uargs_uaddr
  • syscall.select β€” exceptfds_uaddr, n, readfds_uaddr, timeout_str, timeout_uaddr, writefds_uaddr

and we're still going, don't worry 🫢

okay bestie, we're deep in the alphabet now β€” S through W β€” and this is the part where the syscall list starts feeling like a receipt from CVS. Every single one of these is a probe alias, and every one of them takes the arguments listed. No skipping, no skimming, we're eating the whole plate. 🍽️✨

  • syscall.semctl β€” takes arg, cmd, cmdstr, semid, semnum
  • syscall.semget β€” takes key, key_str, nsems, semflg, semflg_str
  • syscall.semop β€” takes nsops, semid, sops_uaddr
  • syscall.semtimedop β€” takes nsops, semid, sops_uaddr, timeout_str, timeout_uaddr
  • syscall.send β€” takes buf, buf_uaddr, flags, flags_str, len, s
  • syscall.sendfile β€” takes count, in_fd, offset_uaddr, out_fd
  • syscall.sendmmsg β€” takes flags, flags_str, mmsg_uaddr, s, vlen
  • syscall.sendmsg β€” takes flags, flags_str, msg_uaddr, s
  • syscall.sendto β€” takes buf, buf_uaddr, flags, flags_str, len, s, to_str, to_uaddr, tolen
  • syscall.set_mempolicy β€” takes maxnode, mode, mode_str, nmask_uaddr
  • syscall.set_robust_list β€” takes len, list_head_uaddr
  • syscall.set_thread_area β€” takes u_info_str, u_info_uaddr
  • syscall.set_tid_address β€” takes tidptr_uaddr
  • syscall.setdomainname β€” takes domainname_str, domainname_str_unquoted, domainname_uaddr, len
  • syscall.setfsgid β€” takes fsgid
  • syscall.setfsuid β€” takes fsuid
  • syscall.setgid β€” takes gid
  • syscall.setgroups β€” takes list_uaddr, size
  • syscall.sethostname β€” takes hostname_uaddr, len, name_str, name_str_unquoted
  • syscall.setitimer β€” takes ovalue_uaddr, value_str, value_uaddr, which, which_str
  • syscall.setns β€” takes fd, nstype, nstype_str
  • syscall.setpgid β€” takes pgid, pid
  • syscall.setpriority β€” takes prio, which, which_str, who
  • syscall.setregid β€” takes egid, rgid
  • syscall.setregid16 β€” takes egid, rgid
  • syscall.setresgid β€” takes egid, rgid, sgid
  • syscall.setresgid16 β€” takes egid, rgid, sgid
  • syscall.setresuid β€” takes euid, ruid, suid
  • syscall.setresuid16 β€” takes euid, ruid, suid
  • syscall.setreuid β€” takes euid, ruid
  • syscall.setreuid16 β€” takes euid, ruid
  • syscall.setrlimit β€” takes resource, resource_str, rlim_str, rlim_uaddr
  • syscall.setsid β€” takes literally nothing, she just is πŸ’…
  • syscall.setsockopt β€” takes fd, level, level_str, optlen, optname, optname_str, optval_uaddr
  • syscall.settimeofday β€” takes tv_str, tv_uaddr, tz_str, tz_uaddr
  • syscall.settimeofday32 β€” takes tv_str, tv_uaddr, tz_str, tz_uaddr
  • syscall.setuid β€” takes uid
  • syscall.setxattr β€” takes flags, flags_str, name_str, name_str_unquoted, name_uaddr, path, path_uaddr, path_unquoted, size, value_str, value_uaddr
  • syscall.sgetmask β€” no arguments, no notes, just iconic πŸŽ€
  • syscall.shmat β€” takes shmaddr_uaddr, shmflg, shmflg_str, shmid
  • syscall.shmctl β€” takes buf_uaddr, cmd, cmd_str, shmid
  • syscall.shmdt β€” takes shmaddr_uaddr
  • syscall.shmget β€” takes key, shmflg, shmflg_str, size
  • syscall.shutdown β€” takes how, how_str, s
  • syscall.sigaction β€” takes $id, $regs, act_str, act_uaddr, int, oact_uaddr, pt_regs*, sig, sig_str
  • syscall.sigaction32 β€” takes act_str, act_uaddr, oact_uaddr, sig, sig_str
  • syscall.sigaltstack β€” takes uoss_uaddr, uss_str, uss_uaddr
  • syscall.signal β€” takes handler, handler_str, sig, sig_str
  • syscall.signalfd β€” takes flags
  • syscall.sigpending β€” takes set
  • syscall.sigprocmask β€” takes how, how_str, oldset_uaddr, set_uaddr
  • syscall.sigsuspend β€” takes mask, mask_str
  • syscall.socket β€” takes family, family_str, protocol, protocol_str, type, type_str
  • syscall.socketpair β€” takes family, family_str, protocol, protocol_str, sv_uaddr, type, type_str
  • syscall.splice β€” takes fd_in, fd_out, flags, flags_str, len, off_in, off_out
  • syscall.ssetmask β€” takes newmask, newmask_str
  • syscall.stat β€” takes buf_uaddr, filename, filename_uaddr, filename_unquoted
  • syscall.statfs β€” takes buf_uaddr, path, path_unquoted
  • syscall.statfs64 β€” takes buf_uaddr, path, path_unquoted, sz
  • syscall.statx β€” takes buf_uaddr, dfd, dfd_str, filename, filename_uaddr, filename_unquoted, flags, flags_str, mask, mask_str
  • syscall.stime β€” takes t_uaddr

the s block said "one more thing" like eleven times. anyway. πŸ’€


  • syscall.swapoff β€” takes path, path_uaddr, path_unquoted
  • syscall.swapon β€” takes path, path_uaddr, path_unquoted, swapflags, swapflags_str
  • syscall.symlink β€” takes newpath, oldpath, oldpath_unquoted
  • syscall.symlinkat β€” takes newdfd, newdfd_str, newname, newname_str, newname_str_unquoted, oldname, oldname_str, oldname_str_unquoted
  • syscall.sync β€” zero arguments, all aura ✨
  • syscall.sync_file_range β€” takes fd, flags, flags_str, nbytes, offset
  • syscall.syncfs β€” takes fd
  • syscall.sysctl β€” takes $id, $regs, args, int, pt_regs*
  • syscall.sysfs β€” takes arg1, arg2, option
  • syscall.sysinfo β€” takes info_str, info_uaddr
  • syscall.syslog β€” takes bufp_uaddr, len, type
  • syscall.tee β€” takes fdin, fdout, flags, len
  • syscall.tgkill β€” takes pid, sig, sig_str, tgid
  • syscall.time β€” takes t_uaddr
  • syscall.timer_create β€” takes clockid, clockid_str, evp_uaddr, timerid_uaddr
  • syscall.timer_delete β€” takes timerid
  • syscall.timer_getoverrun β€” takes timerid
  • syscall.timer_gettime β€” takes timerid, value_uaddr
  • syscall.timer_settime β€” takes flags, ovalue_uaddr, timerid, value_str, value_uaddr
  • syscall.timerfd_create β€” takes clockid, clockid_str, flags, flags_str
  • syscall.timerfd_gettime β€” takes fd, value_uaddr
  • syscall.timerfd_settime β€” takes fd, flags, flags_str, ovalue_uaddr, value_str, value_uaddr
  • syscall.times β€” takes buf_str, buf_uaddr
  • syscall.tkill β€” takes pid, sig, sig_str
  • syscall.truncate β€” takes length, path, path_uaddr, path_unquoted
  • syscall.umask β€” takes mask
  • syscall.umount β€” takes flags, flags_str, target, target_unquoted
  • syscall.uname β€” takes name_uaddr
  • syscall.unlink β€” takes pathname, pathname_uaddr, pathname_unquoted
  • syscall.unlinkat β€” takes dfd, dfd_str, flag, flag_str, pathname, pathname_str, pathname_str_unquoted
  • syscall.unshare β€” takes unshare_flags, unshare_flags_str
  • syscall.uselib β€” takes $id, $regs, int, library, library_uaddr, library_unquoted, pt_regs*
  • syscall.userfaultfd β€” takes flags, flags_str
  • syscall.ustat β€” takes dev, ubuf_uaddr
  • syscall.ustat32 β€” takes dev, ubuf_uaddr
  • syscall.utime β€” takes actime, buf_uaddr, filename, filename_uaddr, filename_unquoted, modtime
  • syscall.utimensat β€” takes dfd, dfd_str, filename, filename_uaddr, filename_unquoted, flags, flags_str, tsp_str, tsp_uaddr
  • syscall.utimes β€” takes filename, filename_uaddr, filename_unquoted, tvp_uaddr, tvp_uaddr_str
  • syscall.vfork β€” no args at all, she came empty-handed 🫢
  • syscall.vhangup β€” also no args, also unbothered
  • syscall.vmsplice β€” takes fd, flags, flags_str, iov, nr_segs
  • syscall.wait4 β€” takes options, options_str, pid, rusage_uaddr, status_uaddr
  • syscall.waitid β€” takes infop_uaddr, options, options_str, pid, rusage_uaddr, which, which_str
  • syscall.waitpid β€” takes options, options_str, pid, status_uaddr
  • syscall.write β€” takes buf_str, buf_uaddr, count, fd
  • syscall.writev β€” takes count, fd, vector_uaddr

AND THAT'S THE WHOLE LIST, BABE. πŸŽ‰ Every syscall. alias from accept all the way down to writev, accounted for, nothing left behind, not one argument dropped on the floor. If you read all three parts you are genuinely built different and I'm obsessed with you. πŸ’–

🌈 SEE ALSO 🌈


and that's a wrap, bestie πŸŽ€ β€” this whole glow-up came straight out of the Systemtap Tapset Reference, dated September 2026, filed under TAPSET::SYSCALLS(3stap). go take a nap, you earned it. πŸ’…βœ¨

πŸ“¦ where this page comes from