OpenBSD cvs log

created 2024-12-21T16:11:25Z
begin 2024-12-15T00:00:00Z
end 2024-12-16T00:00:00Z
path src/sys
commits 4

date 2024-12-15T11:00:05Z
author dlg
files src/sys/conf/files log diff annotate
src/sys/kern/uipc_domain.c log diff annotate
src/sys/kern/uipc_socket.c log diff annotate
src/sys/net/af_frame.c log diff annotate
src/sys/net/frame.h log diff annotate
src/sys/net/if_ethersubr.c log diff annotate
src/sys/sys/socket.h log diff annotate
message add an AF_FRAME socket domain and an IFT_ETHER protocol family under it.

this allows userland to use sockets to send and receive Ethernet
frames. as per the upcoming frame.4 man page:

frame protocol family sockets are designed as an alternative to bpf(4)
for handling low data and packet rate communication protocols. Rather
than filtering every frame entering the system before the network stack
like bpf(4), the frame protocol family processing avoids this overhead by
running after the built in protocol handlers in the kernel. For this
reason, it is not possible to handle IPv4 or IPv6 packets with frame
protocol sockets because the kernel network stack consumes them before
the receive handling for frame sockets is run.

if you've used udp sockets then these should feel much the same.

my main motivation is to implement an lldp agent in userland, but
without having to have bpf look at every packet when lldp happens
every minute or two.

the only feedback i had was positive, so i'm putting it in
ok claudio@

date 2024-12-15T11:02:59Z
author mpi
files src/sys/dev/pci/drm/drm_gem.c log diff annotate
src/sys/dev/pci/drm/drm_gem_dma_helper.c log diff annotate
src/sys/dev/pci/drm/amd/amdgpu/amdgpu_gem.c log diff annotate
src/sys/dev/pci/drm/i915/gem/i915_gem_mman.c log diff annotate
src/sys/dev/pci/drm/i915/gem/i915_gem_ttm.c log diff annotate
src/sys/dev/pci/drm/radeon/radeon_gem.c log diff annotate
src/sys/dev/pci/drm/ttm/ttm_bo_vm.c log diff annotate
src/sys/uvm/uvm_device.c log diff annotate
src/sys/uvm/uvm_fault.c log diff annotate
message Return errno values rather than dying VM_PAGER_* in the pgo_fault() interfaces.

This doesn't introduce any value change. All errors are converted to EACCES
even if many could use EIO.

ok tb@, jsg@

date 2024-12-15T18:23:56Z
author mvs
files src/sys/dev/video.c log diff annotate
message Make `video_filtops' mp-safe.

Replace selinfo data with klist. Introduce `sc_mtx' mutex(9) to protect
`sc_frames_data' and `sc_rklist'.

Additionally tested by Laurence Tratt.

ok kirill mglocker

date 2024-12-15T18:25:12Z
author mvs
files src/sys/kern/kern_sysctl.c log diff annotate
src/sys/kern/sys_process.c log diff annotate
message Unlock KERN_GLOBAL_PTRACE. `global_ptrace' is atomically accessed
boolean integer. Only ptrace_ctrl() loads it once outside sysctl(2)
layer.

ok mpi