OpenBSD cvs log

created 2022-02-20T02:57:52Z
begin 2022-02-16T00:00:00Z
end 2022-02-17T00:00:00Z
path src/sys
commits 18

date 2022-02-16T01:25:45Z
author dlg
files src/sys/conf/files log diff annotate
src/sys/net/if_vxlan.c log diff annotate
src/sys/netinet/udp_usrreq.c log diff annotate
message rewrite vxlan to better fit the current kernel infrastructure.

the big change is removing the integration with and reliance on
bridge(4) for learning vxlan endpoints. we have the etherbridge
layer now (which is used by veb, nvgre, bpe, etc) so vxlan can
operate independently of bridge(4) (or any other driver) while still
dynamically learning about other endpoints.

vxlan now uses the udp socket upcall mechanism to receive packets.
this means it actually creates and binds udp sockets to use rather
adding code in the udp layer for stealing packets from the udp
layer.

i think it's also important to note that this adds loop prevention
to the code. this stops a vxlan interface being used to transmit a
packet that was encapsulated in itself.

i want to clear this out of my tree where it's been sitting for
nearly a year. noone seems too concerned with the change either
way.

ok claudio@

date 2022-02-16T01:45:31Z
author dlg
files src/sys/net/if_vxlan.c log diff annotate
message fill in support for rx prio handling.

date 2022-02-16T02:22:39Z
author dlg
files src/sys/net/if_tun.c log diff annotate
message prevent (re)opening of tun/tap interfaces that are being destroyed.

if an open tun (or tap) device is destroyed via the clone destroy
ioctl (eg, like what ifconfig destroy does), there is a window while
the open device is being revoked on the vfs side that a third thread
can come and open it again. this in turn triggers a kassert in the
ifconfig destroy path where it expects the
device to be closed.

fix this by having tun_dev_open check for the TUN_DEAD flag that
the destroy function sets. this still relies on the kernel lock for
serialisation.

Reported-by: [email protected]
ok visa@

date 2022-02-16T04:25:34Z
author dlg
files src/sys/net/pf_ioctl.c log diff annotate
message check pf rule "set prio" values consistently.

consistently means we do the check in pf_rule_copyin() so both
DIOCADDRULE and DIOCCHANGERULE have the prio values checked. this in
turn prevents invalid prio values getting set on a rule via
DIOCCHANGERULE.

this was caught by a kassert in the ifq priq code firing.

Reported-by: [email protected]
ok sashan@

date 2022-02-16T06:21:18Z
author anton
files src/sys/arch/hppa/gsc/harmony.c log diff annotate
src/sys/arch/luna88k/cbus/nec86.c log diff annotate
src/sys/arch/macppc/dev/aoa.c log diff annotate
src/sys/arch/macppc/dev/awacs.c log diff annotate
src/sys/arch/macppc/dev/daca.c log diff annotate
src/sys/arch/macppc/dev/onyx.c log diff annotate
src/sys/arch/macppc/dev/snapper.c log diff annotate
src/sys/arch/macppc/dev/tumbler.c log diff annotate
src/sys/arch/sparc64/dev/ce4231.c log diff annotate
src/sys/dev/audio.c log diff annotate
src/sys/dev/audio_if.h log diff annotate
src/sys/dev/fdt/graphaudio.c log diff annotate
src/sys/dev/fdt/simpleaudio.c log diff annotate
src/sys/dev/ic/arcofi.c log diff annotate
src/sys/dev/isa/ess.c log diff annotate
src/sys/dev/isa/gus.c log diff annotate
src/sys/dev/isa/pas.c log diff annotate
src/sys/dev/isa/sb.c log diff annotate
src/sys/dev/pci/auacer.c log diff annotate
src/sys/dev/pci/auglx.c log diff annotate
src/sys/dev/pci/auich.c log diff annotate
src/sys/dev/pci/auixp.c log diff annotate
src/sys/dev/pci/autri.c log diff annotate
src/sys/dev/pci/auvia.c log diff annotate
src/sys/dev/pci/azalia.c log diff annotate
src/sys/dev/pci/cmpci.c log diff annotate
message Make room for a cookie argument passed to audio_attach_mi(). Currently
unused but intended to be used to correlate audio and wskbd devices.

ok ratchov@

date 2022-02-16T06:21:19Z
author anton
files src/sys/dev/pci/cs4280.c log diff annotate
src/sys/dev/pci/cs4281.c log diff annotate
src/sys/dev/pci/eap.c log diff annotate
src/sys/dev/pci/emuxki.c log diff annotate
src/sys/dev/pci/envy.c log diff annotate
src/sys/dev/pci/esa.c log diff annotate
src/sys/dev/pci/eso.c log diff annotate
src/sys/dev/pci/fms.c log diff annotate
src/sys/dev/pci/maestro.c log diff annotate
src/sys/dev/pci/neo.c log diff annotate
src/sys/dev/pci/sv.c log diff annotate
src/sys/dev/pci/yds.c log diff annotate
src/sys/dev/sbus/cs4231.c log diff annotate
src/sys/dev/tc/bba.c log diff annotate
src/sys/dev/usb/uaudio.c log diff annotate
src/sys/dev/usb/utvfu.c log diff annotate
message Make room for a cookie argument passed to audio_attach_mi(). Currently
unused but intended to be used to correlate audio and wskbd devices.

ok ratchov@

date 2022-02-16T06:23:42Z
author anton
files src/sys/dev/audio.c log diff annotate
src/sys/dev/usb/uaudio.c log diff annotate
src/sys/dev/usb/ucc.c log diff annotate
src/sys/dev/usb/usb_subr.c log diff annotate
src/sys/dev/usb/usbdi.h log diff annotate
src/sys/dev/wscons/wskbd.c log diff annotate
src/sys/dev/wscons/wskbdvar.h log diff annotate
message Currently, wskbd_set_mixervolume() only adjusts the volume of the first
attached audio device, i.e. audio0. This approach does not work well
while using additional audio devices equipped with physical volume keys
since those would only affect the volume of audio0.

Instead, correlate audio and ucc devices attached over USB in order to
adjust the volume of the correct audio device. This is done by passing a
cookie from the common point of attachment which is later used to
correlate the audio and wskbd device.

The same approach could be adopted for audio and wskbd devices attaching
on a different bus. Keep in mind that it's of importance to make use of
and increment the same global cookie identifier to avoid collisions.

Makes the volume keys on my Logitech G435 Headset do the right thing.

ok ratchov@

date 2022-02-16T06:41:27Z
author deraadt
files src/sys/arch/arm64/dev/apm.c log diff annotate
src/sys/arch/macppc/dev/apm.c log diff annotate
src/sys/dev/acpi/acpi_x86.c log diff annotate
src/sys/kern/subr_suspend.c log diff annotate
src/sys/sys/device.h log diff annotate
message change MD gosleep() and sleep_finish() to return int, the MI code will be
able to react to this suitably.

date 2022-02-16T06:47:28Z
author deraadt
files src/sys/kern/subr_suspend.c log diff annotate
message If the lid is closed, suspend_finish() now returns EAGAIN, so go to the top
and restart the suspend all over again. This was previously done by issuing
a task to the acpi thread, but this is simpler.
(I want to try to duplicate these tests earlier in the resume path...)

date 2022-02-16T07:13:09Z
author deraadt
files src/sys/dev/acpi/acpi_x86.c log diff annotate
message if the lids indicate we are not supposed to wakeup, return EAGAIN rather
than scheduling an acpi thread

date 2022-02-16T08:01:32Z
author jsg
files src/sys/kern/kern_clock.c log diff annotate
message unifdef PROC_PC
ok guenther@ rob@

date 2022-02-16T08:46:11Z
author sashan
files src/sys/net/pf_lb.c log diff annotate
message nat-to round-robin without a pool should fallback to POOL_NONE
bug reported by giovanni@

OK giovanni@

date 2022-02-16T13:07:36Z
author visa
files src/sys/arch/riscv64/conf/GENERIC log diff annotate
src/sys/arch/riscv64/conf/RAMDISK log diff annotate
src/sys/arch/riscv64/conf/files.riscv64 log diff annotate
src/sys/arch/riscv64/dev/mpfiic.c log diff annotate
message Add mpfiic(4), a driver for the PolarFire SoC MSS I2C controller.

OK kettenis@

date 2022-02-16T13:16:10Z
author visa
files src/sys/kern/uipc_socket.c log diff annotate
message Reduce code duplication in socket event filters.

OK mpi@

date 2022-02-16T13:18:08Z
author visa
files src/sys/miscfs/fifofs/fifo_vnops.c log diff annotate
message Reduce code duplication in FIFO event filters.

OK mpi@

date 2022-02-16T13:19:33Z
author visa
files src/sys/miscfs/fifofs/fifo_vnops.c log diff annotate
message Add missing FILTEROP_MPSAFE flag to fifoexcept_filtops.

OK mpi@

date 2022-02-16T16:44:17Z
author deraadt
files src/sys/kern/subr_suspend.c log diff annotate
message return unique errors (I chose some errno values.. ) for the various
failure modes. Also, pack the code a little bit, easier to read.

date 2022-02-16T20:20:36Z
author deraadt
files src/sys/dev/acpi/acpi_x86.c log diff annotate
message rev 1.4 was wrong to put potential IO operations after _GTS.
re-creating the original (2 weeks ago) order of last-minute-disk-parking
needs a different approach, hmm.