OpenBSD cvs log

created 2023-10-05T13:30:06Z
begin 2023-09-29T00:00:00Z
end 2023-09-30T00:00:00Z
path src/sys
commits 6

date 2023-09-29T12:47:34Z
author claudio
files src/sys/kern/kern_exec.c log diff annotate
src/sys/kern/kern_exit.c log diff annotate
src/sys/kern/kern_pledge.c log diff annotate
src/sys/kern/kern_sig.c log diff annotate
src/sys/sys/proc.h log diff annotate
message Extend single_thread_set() mode with additional flag attributes.

The mode can now be or-ed with SINGLE_DEEP or SINGLE_NOWAIT to alter
the behaviour of single_thread_set(). This allows explicit control
of the SINGLE_DEEP behaviour.

If SINGLE_DEEP is set the deep flag is passed to the initial check call
and by that the check will error out instead of suspending (SINGLE_UNWIND)
or exiting (SINGLE_EXIT). The SINGLE_DEEP flag is required in calls to
single_thread_set() outside of userret. E.g. at the start of sys_execve
because the proc is not allowed to call exit1() in that location.

SINGLE_NOWAIT skips the wait at the end of single_thread_set() and therefor
returns BEFORE all threads have been parked. Currently this is only used by
the ptrace code and should not be used anywhere else. Not waiting for all
threads to settle is asking for trouble.

This solves an issue by using SINGLE_UNWIND in the coredump case where
the code should actually exit in case another thread crashed moments earlier.
Also the SINGLE_UNWIND in pledge_fail() is now marked SINGLE_DEEP since
the call to pledge_fail() is for sure not at the kernel boundary.

OK mpi@

date 2023-09-29T15:51:48Z
author kettenis
files src/sys/dev/fdt/rkclock.c log diff annotate
src/sys/dev/fdt/rkclock_clocks.h log diff annotate
src/sys/dev/fdt/rkusbphy.c log diff annotate
message Newer versions of U-Boot may disable the USB PHYs and gate their clocks.
Add support for the rk3399 to rkusbphy(4) and implement support for the
required clocks.

ok kevlo@

date 2023-09-29T17:30:35Z
author kettenis
files src/sys/dev/fdt/rkusbphy.c log diff annotate
message Revert previous commit; botched testing meant that I missed USB device no
longer attach to the USB 2.0 ports.

date 2023-09-29T18:40:08Z
author tobhe
files src/sys/net/pfkeyv2.c log diff annotate
message Only forward validated pfkey messages to promiscuous listeners.
Fixes a bunch of crashes with ipsecctl -m.

ok bluhm@

date 2023-09-29T18:45:42Z
author tobhe
files src/sys/net/pfkeyv2_parsemessage.c log diff annotate
message Make sure pfkeyv2_parsemessage() only returns 0 if the message was
successfully validated. Decline all messages from userland that contain
errnos and remove unneeded special handling for type SADB_X_PROMISC.

ok bluhm@

date 2023-09-29T19:44:47Z
author bluhm
files src/sys/dev/pci/if_ixl.c log diff annotate
message Replace kernel lock with mutex in ixl(4) media status.

Witness found that sc_atq_mtx mutex is held when kernel lock is
acquired. This might cause a deadlock. Protect sc_media_status
and sc_media_active with the link state mutex instead. Global
fields ifm->ifm_status and ifm->ifm_active are still protected by
kernel lock.

OK tobhe@