From nobody Tue May 27 22:44:53 2025 X-Original-To: dev-commits-src-all@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 4b6SPd6MNYz5y12K; Tue, 27 May 2025 22:44:53 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4b6SPd5WSFz47rl; Tue, 27 May 2025 22:44:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1748385893; 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=rDkopYEV0fWNKVmgv49hIL5bkOgOqTDXWOihbZ14db8=; b=Sm0E3ljadpzaWtVk6+WvzO4z04pZN3TG6QLvX//V4o03pMlihadOP8OiVb+NKHW3zO+9Vs YXID3uiFwX5z6eUQQVUW2QG1Y0KtiPWMsRTFHDZECziNl7C5iePJsPy2iT32zKx4eX8RU8 Qzmyt31FnC3h/Hf+gI53kMVOS+u+/NkuR/r75Okvkx2Sr2iKGbN+gnB3E4SftG8J62m5zl +24dIadtNpSLvxYRqpm0zlv2rQE8fq8+Xj/PHjBmjdwbybUB72F0OeAWtdFiLi7hOXaNAm mV9ZPGtDwKL3KzectApT3i2e7DaBSHFrdVr5tHL2Aj3gvvn4s8DFYx//u3Bl/Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1748385893; a=rsa-sha256; cv=none; b=W/pprtsEt/bVxFLJECh9msLDsfUHtjvMiAef9qd7Ms2NDYA/SrfzEDuUCuqzxqAZ4yeFbC goGmoceQ+qUvfeOTnR1DkgYLXJHeSVrjth8TRxFqqqwKHAPLh2jFEJDtPwhXatbwA+LhNA uQ2xbUEKrtDr4skIcubonYpV2sYw0od6M7Drhvv/5p1YY1fGzOg8NB1lGCZ63bP6zjRPdL ykm+6Erjt7W+K5AcFW7i1DwyjbxjWijpWOKCMAPnxkvv0uAv9alzt6MZcQuCnk5Yn9znWn aODyaAuM0nYU6PfW6Y57yN0vzIe6COXw7wu6GR8eejUTw0NlYYNBx/B6vj2CsA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1748385893; 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=rDkopYEV0fWNKVmgv49hIL5bkOgOqTDXWOihbZ14db8=; b=Xz4Q2PZEzVylP1/JCaFKy+qA3H5uNqKDHr3p3sXwhEjHUcZ/b44ODhhDVMup65tkPqGsUc FNfI8r2xE9hR48/VL7TAOxIdgQNzt/FXaYWquRWQ0JULezNnpTlhF1XPEWOEm5ToxjtOdm k7IWnIkq+YpUVl7uZcaIt6kQqg42yFh5Vs7SFldNckKKYaFJ9z9JLAxGZp+fgsS9yRzF57 FFenOFjxu78rcAQBcFFSTYTmueFzqZjDhcsWcVw6mqlt/aduX7Jq82sArxrCc793XFm4QN E3QFXtgq9QM4f8SGaMJIBhaX5U8HKUdpdsRVfEGda58CikvOCD9eCMQBZQighA== 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 4b6SPd4vGbz19yG; Tue, 27 May 2025 22:44:53 +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 54RMir7o048561; Tue, 27 May 2025 22:44:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54RMir5I048558; Tue, 27 May 2025 22:44:53 GMT (envelope-from git) Date: Tue, 27 May 2025 22:44:53 GMT Message-Id: <202505272244.54RMir5I048558@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: 4d66e0f8841b - releng/14.3 - LinuxKPI: 802.11: mark struct ieee80211_ht_cap __packed List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@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/releng/14.3 X-Git-Reftype: branch X-Git-Commit: 4d66e0f8841b64e1a7d7d0250483da036ff92ab0 Auto-Submitted: auto-generated The branch releng/14.3 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=4d66e0f8841b64e1a7d7d0250483da036ff92ab0 commit 4d66e0f8841b64e1a7d7d0250483da036ff92ab0 Author: Bjoern A. Zeeb AuthorDate: 2025-05-26 23:20:20 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-05-27 22:44:20 +0000 LinuxKPI: 802.11: mark struct ieee80211_ht_cap __packed In lkpi_sta_sync_ht_from_ni() we are casting the information element (IE) data to this struct as net80211 does not save the mcs/rx_mask. Not marking the structs packed results in the mcs information not being copied correctly and rx_nss calculations possibly being off. Even worse, at a later stage iwlwifi mvm/rs.c would extract the mcs values from the same field to pass to the firmware which will than crash in an assert as we would want to do HT with an empty MCS set. Sponsored by: The FreeBSD Foundation Discovered: while testing other features on arm64. Approved by: re (cperciva) (cherry picked from commit 6cbf8a04b1864d933506301cabe213a9c918d968) (cherry picked from commit 9ccf7aeaa5dc5ceb3bf896d84ee50294b841043b) --- sys/compat/linuxkpi/common/include/linux/ieee80211.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/ieee80211.h b/sys/compat/linuxkpi/common/include/linux/ieee80211.h index 396204c3c484..fe2055f05969 100644 --- a/sys/compat/linuxkpi/common/include/linux/ieee80211.h +++ b/sys/compat/linuxkpi/common/include/linux/ieee80211.h @@ -304,7 +304,7 @@ struct ieee80211_mcs_info { uint16_t rx_highest; uint8_t tx_params; uint8_t __reserved[3]; -}; +} __packed; /* 802.11-2020, 9.4.2.55.1 HT Capabilities element structure */ struct ieee80211_ht_cap { @@ -314,7 +314,7 @@ struct ieee80211_ht_cap { uint16_t extended_ht_cap_info; uint32_t tx_BF_cap_info; uint8_t antenna_selection_info; -}; +} __packed; #define IEEE80211_HT_MAX_AMPDU_FACTOR 13 #define IEEE80211_HE_HT_MAX_AMPDU_FACTOR 16