OpenBSD cvs log

created 2020-07-28T20:35:06Z
begin 2020-05-05T00:00:00Z
end 2020-05-06T00:00:00Z
path src/sys
commits 2

date 2020-05-05T09:41:33Z
author stsp
files src/sys/dev/pci/if_iwn.c log diff annotate
message Revert parts of CVS commit Jdqd26bn9Ev6aFMc ("Fix processing of compressed
block ack notifications sent by iwn(4) firmware").

This effectively reverts changes in how the driver interacts with firmware
and fixes connections getting stuck for unknown reasons, in two known cases:
One with an Airport Extreme 6th gen AP and another with a b-box 3V+ modem
using a Sagemcom MAC address for its built-in AP.

The Sagemcom case was observed by myself.
The Airport case was reported by Jeremy O'Brien via abieber@.

I am committing this now to prevent the problem from affecting 6.7 release
even though we don't yet understand what caused the problem.

ok mpi@

date 2020-05-05T18:14:42Z
author stsp
files src/sys/net80211/ieee80211_node.c log diff annotate
message Purge the ic_bss->ni_savedq mbuf queue when a wireless interface goes down.

Purging this queue prevents a panic which occurs when a WPA2-enabled athn(4)
hostap interface is reconfigured while this queue contains frames.

In hostap mode, this queue contains group-addressed (broadcast) frames
which are buffered for clients sleeping in powersave state. Frames on
this queue are transmitted when it is time to send another beacon, at
which point in time sleeping clients wake up to receive such frames.

The panic message is "key unset for sw crypto", which can be explained as
follows: Group keys are cleared when the interface goes down. The beacon Tx
interrupt handler gets triggered by hardware when the interface comes back
up. This handler attempts to encrypt the queued frames for transmission,
resulting in the above panic since the group key has been zeroed out.

This panic has been observed with athn(4) by Jan Stary and Ted Patterson,
and Ted has confirmed that this patch fixes the problem.

ok kettenis@ (with the caveat that it's been a long time since he put our
AP-side powersave support into a working state)