OpenBSD cvs log

created 2023-12-19T21:00:49Z
begin 2023-12-12T00:00:00Z
end 2023-12-13T00:00:00Z
path src/sys
commits 10

date 2023-12-12T00:03:31Z
author mvs
files src/sys/net/if_pflow.c log diff annotate
src/sys/net/if_pflow.h log diff annotate
message Turn `pflowstats' statistics counters into per-CPU counters to make them
mpsafe.

The weird interactions around `pflow_flows' and `sc_gcounter' replaced
by simple `pflow_flows' increment. Since the flow sequence is the 32
bits integer, the `sc_gcounter' type replaced by the type of uint32_t.

ok bluhm sashan

date 2023-12-12T07:37:20Z
author deraadt
files src/sys/arch/amd64/amd64/locore.S log diff annotate
src/sys/arch/arm/arm/sigcode.S log diff annotate
src/sys/arch/arm64/arm64/locore.S log diff annotate
src/sys/arch/hppa/hppa/locore.S log diff annotate
src/sys/arch/i386/i386/locore.s log diff annotate
message 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?

date 2023-12-12T07:37:21Z
author deraadt
files src/sys/arch/m88k/m88k/subr.S log diff annotate
src/sys/arch/macppc/macppc/locore.S log diff annotate
src/sys/arch/mips64/mips64/lcore_access.S log diff annotate
src/sys/arch/powerpc64/powerpc64/locore.S log diff annotate
src/sys/arch/riscv64/riscv64/locore.S log diff annotate
src/sys/arch/sh/sh/locore_subr.S log diff annotate
src/sys/arch/sparc64/sparc64/locore.s log diff annotate
message 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?

date 2023-12-12T12:38:52Z
author mvs
files src/sys/net/if_pflow.c log diff annotate
message slyle(9) fix. No functional changes.

date 2023-12-12T15:30:55Z
author deraadt
files src/sys/arch/alpha/alpha/trap.c log diff annotate
src/sys/arch/amd64/amd64/locore.S log diff annotate
src/sys/arch/amd64/amd64/trap.c log diff annotate
src/sys/arch/arm/arm/syscall.c log diff annotate
src/sys/arch/arm64/arm64/syscall.c log diff annotate
src/sys/arch/hppa/hppa/trap.c log diff annotate
src/sys/arch/i386/i386/trap.c log diff annotate
src/sys/kern/kern_ktrace.c log diff annotate
src/sys/kern/syscalls.master log diff annotate
src/sys/sys/ktrace.h log diff annotate
src/sys/sys/syscall_mi.h log diff annotate
message remove support for syscall(2) -- the "indirection system call" because
it is a dangerous alternative entry point for all system calls, and thus
incompatible with the precision system call entry point scheme we are
heading towards. This has been a 3-year mission:
First perl needed a code-generated wrapper to fake syscall(2) as a giant
switch table, then all the ports were cleaned with relatively minor fixes,
except for "go". "go" required two fixes -- 1) a framework issue with
old library versions, and 2) like perl, a fake syscall(2) wrapper to
handle ioctl(2) and sysctl(2) because "syscall(SYS_ioctl" occurs all over
the place in the "go" ecosystem because the "go developers" are plan9-loving
unix-hating folk who tried to build an ecosystem without allowing "ioctl".
ok kettenis, jsing, afresh1, sthen

date 2023-12-12T15:30:56Z
author deraadt
files src/sys/arch/m88k/m88k/trap.c log diff annotate
src/sys/arch/mips64/mips64/trap.c log diff annotate
src/sys/arch/powerpc/powerpc/trap.c log diff annotate
src/sys/arch/powerpc64/powerpc64/syscall.c log diff annotate
src/sys/arch/riscv64/riscv64/syscall.c log diff annotate
src/sys/arch/sh/sh/trap.c log diff annotate
src/sys/arch/sparc64/sparc64/trap.c log diff annotate
message remove support for syscall(2) -- the "indirection system call" because
it is a dangerous alternative entry point for all system calls, and thus
incompatible with the precision system call entry point scheme we are
heading towards. This has been a 3-year mission:
First perl needed a code-generated wrapper to fake syscall(2) as a giant
switch table, then all the ports were cleaned with relatively minor fixes,
except for "go". "go" required two fixes -- 1) a framework issue with
old library versions, and 2) like perl, a fake syscall(2) wrapper to
handle ioctl(2) and sysctl(2) because "syscall(SYS_ioctl" occurs all over
the place in the "go" ecosystem because the "go developers" are plan9-loving
unix-hating folk who tried to build an ecosystem without allowing "ioctl".
ok kettenis, jsing, afresh1, sthen

date 2023-12-12T15:32:58Z
author deraadt
files src/sys/sys/syscall.h log diff annotate
src/sys/sys/syscallargs.h log diff annotate
message sync

date 2023-12-12T15:32:59Z
author deraadt
files src/sys/kern/init_sysent.c log diff annotate
src/sys/kern/syscalls.c log diff annotate
message sync

date 2023-12-12T17:43:10Z
author deraadt
files src/sys/kern/kern_pledge.c log diff annotate
message put pinsyscalls(2) into the "always" group

date 2023-12-12T23:43:35Z
author deraadt
files src/sys/arch/arm64/arm64/syscall.c log diff annotate
src/sys/arch/sparc64/sparc64/trap.c log diff annotate
message two syscall(2) removal chunks got lost