From nobody Wed Nov 12 15:41:50 2025 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4d671V3w0Kz6G9HT; Wed, 12 Nov 2025 15:41:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4d671V3JxYz3Chb; Wed, 12 Nov 2025 15:41:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1762962110; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nSEHwZmAyNSrILpbaPOp2meeWYHl/Kzg3UaS991BVpY=; b=ecPpD5Nip3jCTUbIwpHJjPYLdroGl6jURg90Wttl2niZshleY3BopF89i8mfdfboUIn6hq rX7H+zO4PyYCBeFHwQZy4AFJDUOesfES+sxxbrIMae8pn85HmDuQTLGMWOPiGelnLo8+7A jdQioXwf6minzkcguCsVf5O3D20DxqfHO2drXG6v3n86M9SE0M2+RpQ74/bTemJE1WL7OP Q+K6xKnf9uFzp9nfURYf36zlwOF4s1RIVjQk8ipa0W0LToqNr8zEgmPhDxKwjdJDI93/bz kojKQkmQxQww+EXXKgTb7SbwUAdpz3GerOj2c/ln2I3h/jr+1ESSacHTEaOinA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1762962110; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nSEHwZmAyNSrILpbaPOp2meeWYHl/Kzg3UaS991BVpY=; b=ovx1rJv5bfuaWe0A8sEQEEt+PlGGoLzqNhbUDRYuWLA5stQeZdZpE0wfy43othTKAf115G MAfuHex4WQHWtbGi16g06sI6JSP2gZ3gg6bGajqMXnQzWJDtdg+v8J1PKL3XrFal+vW7Ol /t8lTAwQyqmxxGQB4NTAa1W1LiuN+erDnsgiks6QLqsgcByfG4zdhKF5LRVXa0Aoo99DFz ZUx6tnE6bHPbwaebImSjj/SwiHErm//0GS+4bu6YJ7kMaTm/r9MPoBJzZRuQ9HXxd+uv3i HcNOpZUrv7cPAjt0kCmxiM8rWsn/ID6WrZOOLKrXZVmIX/zn1YfhQgmMUf/fYg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1762962110; a=rsa-sha256; cv=none; b=VnWfaB3wTQ+okx0Wd5431uAaET/sCTl5uyvIOO/0e4qdgYDyNtq4UHFXGGaWKvp+sUxlBt bx2jamgGO7gZuYV8WLsJD1T6iEiQLTMGQ6BaW55jIUfEjLVJ9hy2i14CAOdUvMro1Vzl4V 03ZYMbXhsr8dleAszm/5mTjkYIJAHkZokP/x4w0k6za3+dS4OAt66c5cIY8GAGCSjy+ON9 6lTAQ0pDRi2bo4FR1+WknH1iPK5HUvNyw5HlSxnwutCt6GF5egilRBpFz8XfHU0i2j5/Z5 snC0H6Yx14OMNhOGJWew3jA6rtdNk02eyx9K5LluLTcqr50YwpHInMQ3JeJEdQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4d671V26Mjzgqj; Wed, 12 Nov 2025 15:41:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5ACFfo28056972; Wed, 12 Nov 2025 15:41:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5ACFfoIq056969; Wed, 12 Nov 2025 15:41:50 GMT (envelope-from git) Date: Wed, 12 Nov 2025 15:41:50 GMT Message-Id: <202511121541.5ACFfoIq056969@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: a77abd53e83c - stable/15 - LinuxKPI: 802.11: clear CONF_IDLE earlier List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: a77abd53e83c4357ad8a8006a6e89759e65e3a5b Auto-Submitted: auto-generated The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=a77abd53e83c4357ad8a8006a6e89759e65e3a5b commit a77abd53e83c4357ad8a8006a6e89759e65e3a5b Author: Bjoern A. Zeeb AuthorDate: 2025-11-10 19:41:08 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-11-12 15:41:24 +0000 LinuxKPI: 802.11: clear CONF_IDLE earlier When starting to scan and ending a scan we clear/set the hardware to idle. Similarly we set the hw to idle when we remove the channel context but when starting we only set it to non-idle when we went from assoc to run. This apparently was not a problem most of the time as the switch from a failed hardware scan to a software scan was racing against net80211. ad4ddc83ebf8 fixed that specifically for rtw88 and while we were more consistently scanning, this broke authentication as the setting of idle at the end of the scan was now happening reliably. Move the unsetting of idle from assoc_to_run to scan_to_auth for when we create the chanctx to keep it symmetrical. This makes authentication work again for rtw88 (though not for everyone due to other possible problems with net80211). This likely also fixes the problems in the listed PRs. iwlwifi(4) mvm and mld driver parts do not use this information at all and were never affected. Sponsored by: The FreeBSD Foundation PR: 290850, 288186, 281979 PR: 272145 (the non skb-mem-limit parts) (cherry picked from commit b568711f8ef1afd7c86ea2d8bd2f94f399f54dc1) --- sys/compat/linuxkpi/common/src/linux_80211.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 0dc3b2631804..f025f191a3bd 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -2308,6 +2308,10 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int changed |= IEEE80211_CHANCTX_CHANGE_WIDTH; lkpi_80211_mo_change_chanctx(hw, chanctx_conf, changed); } else { + /* The device is no longer idle. */ + IMPROVE("Once we do multi-vif, only do for 1st chanctx"); + lkpi_hw_conf_idle(hw, false); + error = lkpi_80211_mo_add_chanctx(hw, chanctx_conf); if (error == 0 || error == EOPNOTSUPP) { vif->bss_conf.chanreq.oper.chan = chanctx_conf->def.chan; @@ -3081,8 +3085,6 @@ lkpi_sta_assoc_to_run(struct ieee80211vap *vap, enum ieee80211_state nstate, int lsta->in_mgd = false; } - lkpi_hw_conf_idle(hw, false); - /* * And then: * - (more packets)?