diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2022-01-18 19:24:03 +0100 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2022-01-19 09:10:34 +0100 |
| commit | e333a0e2fc94aa27a735e62e713402c21eb2c0ef (patch) | |
| tree | 1f6ff2d3e25c77c88b0d95bc1809850d0f984aea /sys/linux | |
| parent | 0a4cf54d89683dff77317524c754bb668fd16f63 (diff) | |
sys/linux: describe sigaltstack
It seems we had a bogus signature for sigaltstack for all that time.
It accepts 2 sigaltstack structs according to the kernel code:
https://elixir.bootlin.com/linux/v5.16/source/kernel/signal.c#L4217
Diffstat (limited to 'sys/linux')
| -rw-r--r-- | sys/linux/sys.txt | 10 | ||||
| -rw-r--r-- | sys/linux/sys.txt.const | 4 |
2 files changed, 12 insertions, 2 deletions
diff --git a/sys/linux/sys.txt b/sys/linux/sys.txt index 2ccb38ab1..a8743922e 100644 --- a/sys/linux/sys.txt +++ b/sys/linux/sys.txt @@ -464,7 +464,7 @@ rt_sigtimedwait(these ptr[in, sigset_t], info ptr[out, siginfo, opt], ts ptr[in, rt_sigsuspend(new ptr[in, sigset_t], sigsetsize len[new]) rt_sigqueueinfo(pid pid, sig signalno, info ptr[in, siginfo]) rt_tgsigqueueinfo(gid pid, tid pid, sig signalno, info ptr[in, siginfo]) -sigaltstack(ss vma, oss ptr[out, intptr, opt]) +sigaltstack(ss ptr[in, sigaltstack], oss ptr[out, sigaltstack, opt]) tgkill(gid pid, tid pid, sig signalno) tkill(tid pid, sig signalno) pause() @@ -1095,6 +1095,14 @@ sigaction { sa_mask sigset_t } +sigaltstack { + ss_sp ptr[out, array[int8]] + ss_flags flags[sigaltstack_flags, int32] + ss_size bytesize[ss_sp, intptr] +} + +sigaltstack_flags = SS_ONSTACK, SS_DISABLE, SS_AUTODISARM + tms { utime intptr stime intptr diff --git a/sys/linux/sys.txt.const b/sys/linux/sys.txt.const index ac952adf5..4fa2a7507 100644 --- a/sys/linux/sys.txt.const +++ b/sys/linux/sys.txt.const @@ -506,6 +506,9 @@ SPLICE_F_GIFT = 8 SPLICE_F_MORE = 4 SPLICE_F_MOVE = 1 SPLICE_F_NONBLOCK = 2 +SS_AUTODISARM = 2147483648 +SS_DISABLE = 2 +SS_ONSTACK = 1 STAT64_SIZE = 104, 386:96, amd64:mips64le:riscv64:s390x:??? STATX_ATIME = 32 STATX_BASIC_STATS = 2047 @@ -630,7 +633,6 @@ __NR_fcntl = 55, amd64:72, arm64:riscv64:25, mips64le:5070 __NR_fdatasync = 148, amd64:75, arm64:riscv64:83, mips64le:5073 __NR_finit_module = 273, 386:350, amd64:313, arm:379, mips64le:5307, ppc64le:353, s390x:344 __NR_flock = 143, amd64:73, arm64:riscv64:32, mips64le:5071 -__NR_fork = 2, amd64:57, arm64:riscv64:???, mips64le:5056 __NR_fstat = 108, amd64:5, arm64:riscv64:80, mips64le:5005 __NR_fstat64 = 197, amd64:arm64:mips64le:ppc64le:riscv64:s390x:??? __NR_fstatat64 = 386:300, amd64:arm64:mips64le:ppc64le:riscv64:s390x:???, arm:327 |
