OpenBSD cvs log

created 2021-12-04T22:14:04Z
begin 2021-12-03T00:00:00Z
end 2021-12-04T00:00:00Z
path src/sys
commits 14

date 2021-12-03T06:34:38Z
author anton
files src/sys/dev/usb/uhidev.c log diff annotate
message Bring back the recently reverted change, this time without the inverted
conditional. Repeating the previous commit messsage:

Assert that at least one report id is claimed during multiple report ids
attachment. Should prevent uhidev drivers from doing the wrong thing in their
corresponding match routine.

Tested by dv@

date 2021-12-03T12:40:15Z
author stsp
files src/sys/net80211/ieee80211_input.c log diff annotate
message Ignore ADDBA requests from our AP while we are roaming away from it.

Noticed while testing iwm/iwx roaming patches, where my AP would request
a new Rx BA session when we had already decided to roam away. There is no
need to set up a new Rx BA session with our old AP which we would have to
immediately tear down again anyway.

date 2021-12-03T12:41:36Z
author stsp
files src/sys/net80211/ieee80211_node.c log diff annotate
src/sys/net80211/ieee80211_node.h log diff annotate
src/sys/net80211/ieee80211_proto.c log diff annotate
src/sys/net80211/ieee80211_var.h log diff annotate
message Introduce an optional driver-specific bgscan_done() handler which
allows the driver to take control of the roaming teardown sequence.
This handler allows drivers to ensure that race conditions between
firmware state and net80211 state are avoided, and will be used by
the iwm(4) and iwx(4) drivers soon.

Split the existing roaming teardown sequence into two steps, one step
for tearing down Tx block ack sessions which sends a DELBA frame, and a
second step for flushing Tx rings followed by sending a DEAUTH frame.
We used to queue both frames, expecting to switch APs once both were sent.
Now we effectively expect everything to be sent before we queue a final
DEAUTH frame, and wait for just this frame to be sent before switching.
This already made issues on iwm/iwx less frequent but by itself this was
not enough to close all races for those drivers. It should however help
when adding background scan support to a non-firmware device driver.

Tested, with driver patches:
iwm 8265: Aaron Poffenberger, stsp
iwm 9260: florian
iwm 9560: sthen
iwx ax200: jmc, stsp

date 2021-12-03T12:42:39Z
author stsp
files src/sys/dev/pci/if_iwx.c log diff annotate
src/sys/dev/pci/if_iwxvar.h log diff annotate
message Implement a bgscan_done() handler for iwx(4).

Fixes roaming-related hangs observed by jmc@.

Tested:
ax200: jmc, stsp

date 2021-12-03T12:43:17Z
author stsp
files src/sys/dev/pci/if_iwm.c log diff annotate
src/sys/dev/pci/if_iwmvar.h log diff annotate
message Implement a bgscan_done() handler for iwm(4).

Required to prevent breakage of roaming with new Intel firmware on 9k devices.

Tested:
8265: Aaron Poffenberger, stsp
9260: florian
9560: sthen

date 2021-12-03T13:17:32Z
author stsp
files src/sys/dev/pci/if_iwx.c log diff annotate
message Disable probe requests during scans in iwx(4) again.

While this is working well for many, some people see device timeouts
when using the device unless we disable probe requests during scans.

The issue was a lot more visible on iwx(4) with earlier firmware.
In fact, iwx(4) did ship with probe requests disabled for most of its
existence. I re-enabled them along with a firmware upgrade since I no
longer saw the problem. However, the issue prevails for other people.

I still have no idea what is causing this. I have already spent enough
time trying to track down a proper fix. Unless we receive help from
someone who knows about firmware internals the best we can do is trial
and error. The problem also existed on iwm(4) 9k devices which we now
run with probe requests disabled, too.

The only upside of probe requests is that scans can complete faster, with
the downside of a potential privacy leak (the previously selected SSID is
exposed). So, overall, we do not lose much here.

Patch tested for a week by Laurence Tratt who is no longer seeing device
timeouts which were relatively frequent before.

date 2021-12-03T14:32:08Z
author stsp
files src/sys/dev/pci/if_iwx.c log diff annotate
message Switch iwx(4) to new -67 firmware images.

iwx-firmware-20211101 must be installed with fw_update(1) before
booting a new kernel. sysupgrade(8) will take care of this.

Intel has published a related security advisory:
https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00509.html

iwx(4) devices which are using the iwx-Qu-c0-hr-b0-63 image did
not receive a firmware update. I have no idea why.

Tested:
ax200: jmc, stsp, Matthias Schmidt
ax201: fkr, stsp

date 2021-12-03T17:18:34Z
author bluhm
files src/sys/net/if_bridge.c log diff annotate
src/sys/netinet/ip_output.c log diff annotate
src/sys/netinet/ip_spd.c log diff annotate
src/sys/netinet6/ip6_forward.c log diff annotate
src/sys/netinet6/ip6_output.c log diff annotate
message Add TDB reference counting to ipsp_spd_lookup(). If an output
pointer is passed to the function, it will return a refcounted TDB.
The ref happens when ipsp_spd_inp() copies the pointer from
ipo->ipo_tdb. The caller of ipsp_spd_lookup() has to unref after
using it.
tested by Hrvoje Popovski; OK mvs@ tobhe@

date 2021-12-03T18:23:41Z
author kettenis
files src/sys/dev/fdt/bcm2711_pcie.c log diff annotate
message Perform DMA address translation if required.

ok patrick@

date 2021-12-03T19:04:49Z
author tobhe
files src/sys/net/pfkeyv2.c log diff annotate
src/sys/netinet/ip_ipsp.c log diff annotate
src/sys/netinet/ip_ipsp.h log diff annotate
message Add tdb_delete_locked() to replace duplicate tdb deletion code in
pfkey_flush().

ok bluhm@ mvs@

date 2021-12-03T19:16:29Z
author uaa
files src/sys/arch/arm64/conf/GENERIC log diff annotate
message - support I2C connected PMIC, add "early 1" to sxitwi.
- support axppmic via iic

ok kettenis@

date 2021-12-03T19:17:27Z
author uaa
files src/sys/dev/fdt/axppmic.c log diff annotate
message support AXP805 PMIC
ok kettenis@

date 2021-12-03T19:22:42Z
author uaa
files src/sys/dev/fdt/ehci_fdt.c log diff annotate
src/sys/dev/fdt/sxiccmu.c log diff annotate
message add Allwinner H6 support
ok kettenis@

date 2021-12-03T19:22:43Z
author uaa
files src/sys/dev/fdt/sxiccmu_clocks.h log diff annotate
message add Allwinner H6 support
ok kettenis@