]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
syscalls: fix missing SIGSYS for several ENOSYS errors
authorKonstantin Belousov <kib@FreeBSD.org>
Mon, 25 Sep 2023 16:32:52 +0000 (19:32 +0300)
committerKonstantin Belousov <kib@FreeBSD.org>
Mon, 2 Oct 2023 22:30:52 +0000 (01:30 +0300)
commit39024a89146902ca9aba250130b828ad9aced99d
treeac954f9209b66407e1df9e67f0a78c29e66abb61
parent6b3bb233cd0c3eeeb70e388a62b142b4f22b62b2
syscalls: fix missing SIGSYS for several ENOSYS errors

In particular, when the syscall number is too large, or when syscall is
dynamic.  For that, add nosys_sysent structure to pass fake sysent to
syscall top code.

Reviewed by: dchagin, markj
Discussed with: jhb
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D41976
14 files changed:
sys/amd64/amd64/trap.c
sys/amd64/ia32/ia32_syscall.c
sys/arm/arm/syscall.c
sys/arm64/arm64/elf32_machdep.c
sys/arm64/arm64/trap.c
sys/arm64/linux/linux_sysvec.c
sys/i386/i386/trap.c
sys/i386/linux/linux_sysvec.c
sys/kern/kern_sig.c
sys/kern/kern_syscalls.c
sys/kern/subr_syscall.c
sys/powerpc/powerpc/trap.c
sys/riscv/riscv/trap.c
sys/sys/sysent.h