OpenBSD cvs log

created 2022-12-04T15:12:42Z
begin 2022-11-30T00:00:00Z
end 2022-12-01T00:00:00Z
path src/sys
commits 5

date 2022-11-30T09:52:13Z
author patrick
files src/sys/dev/fdt/qcpwm.c log diff annotate
message Provide default address for qcpwm(4), as Linux upstream removed it from
the device tree.

date 2022-11-30T10:20:37Z
author mvs
files src/sys/kern/syscalls.master log diff annotate
message Unlock getsockopt(2) and setsockopt(2). Unlock them both because at
protocol layer they follow the same (*pr_ctloutput)() handlers.

At sockets layer we touch only per-socket data, which is solock()
protected.

At protocol layer, udp(4), unix(4) and key management sockets have no
(*pr_ctloutput)() handlers. route_ctloutput() touches only per socket
data, which is solock() protected. inet{,6} globals are protected by
netlock, which is solock() backend for corresponding sockets.

ok bluhm@

date 2022-11-30T10:21:29Z
author mvs
files src/sys/kern/init_sysent.c log diff annotate
src/sys/kern/syscalls.c log diff annotate
src/sys/sys/syscall.h log diff annotate
src/sys/sys/syscallargs.h log diff annotate
message regen

date 2022-11-30T13:58:39Z
author kn
files src/sys/kern/uipc_syscalls.c log diff annotate
message Use shared socket/net lock for IP sockets

so{,un}lock_shared() take the shared net lock for PF_INET and PF_INET6
while sticking to the exclusive rwlock elsewhere.

getsockopt(2), getsockname(2) and getpeername(2) (all UNLOCK) do not
write, so the exclusive net lock is overkill here.

OK mvs

date 2022-11-30T14:01:02Z
author kn
files src/sys/netinet6/in6.c log diff annotate
message Unlock nd6_ioctl(), push kernel lock into in6_ioctl_{get,change_ifaddr}()

Neighbour Discovery information is protected by the net lock, as
documented in nd6.h struct nd_ifinfo.

ndp(8) is the only SIOCGIFINFO_IN6 and SIOCGNBRINFO_IN6 user in base.

nd6_lookup(), also used in ICMP6 input and IPv6 forwarding, only needs
the net lock.

OK mvs