The sigtramp was calling sigreturn(2), and upon failure exit(2), which
authorderaadt <deraadt@openbsd.org>
Tue, 12 Dec 2023 07:37:20 +0000 (07:37 +0000)
committerderaadt <deraadt@openbsd.org>
Tue, 12 Dec 2023 07:37:20 +0000 (07:37 +0000)
commitd8417bd7da1c4c9f6786edfd187f5ed8fdaf04fb
tree140db492a5f7b778f538e0d95541cc3bb0eb1d98
parentbb79c4302255a9beb06cc19acca395ec3a56863a
The sigtramp was calling sigreturn(2), and upon failure exit(2), which
doesn't make sense anymore.  It is better to just issue an illegal
instruction.
ok kettenis, with some misgivings about inconsistant approaches between
architectures.
In the future we could change sigreturn(2) to never return an exit code,
but always just terminate the process.  We stopped this system call
from being callable ages ago with msyscall(2), and there is no stub for
it in libc.. maybe that's the next step to take?
12 files changed:
sys/arch/amd64/amd64/locore.S
sys/arch/arm/arm/sigcode.S
sys/arch/arm64/arm64/locore.S
sys/arch/hppa/hppa/locore.S
sys/arch/i386/i386/locore.s
sys/arch/m88k/m88k/subr.S
sys/arch/macppc/macppc/locore.S
sys/arch/mips64/mips64/lcore_access.S
sys/arch/powerpc64/powerpc64/locore.S
sys/arch/riscv64/riscv64/locore.S
sys/arch/sh/sh/locore_subr.S
sys/arch/sparc64/sparc64/locore.s