From nobody Mon May 26 23:33:56 2025 X-Original-To: dev-commits-src-main@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 4b5sXj28w2z5x13K; Mon, 26 May 2025 23:33:57 +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 4b5sXj0Lrjz3gjk; Mon, 26 May 2025 23:33:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1748302437; 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=w+7xNZ0K27QFCyxhZ75WJ7ENIrOqjP2cBfb1L/jg/yk=; b=q1XiaUgp2xdSRdld+VOIjPON+uq+HJW8y/DLmGgwxenLOoEcIw06fvGx4VrcUrU9T6G22S sb03bn8koHBNfjgjsLLBa6/hTCm4LlymVCHXz99k4OBevx553T2ok85xu1V2y8Vt0UnLiy CgO83nuEixFdu3574bhYQ6IX/uS8TH8LwkCEGDGmjkYXNHaY5nLznhLcMhJTQzcyVEVq7J c7Tw5JI2RInV5VITtYOYePTeJAF2+W4ZIANs539ar/izS5V8kyDCIjMqVZlrWqfeXgLvRz YjPBQZouUSiwaSBty5KqlactkaiRoCLcFe5Cg4zg4HBsKj821/cjL5juMUnMjA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1748302437; 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=w+7xNZ0K27QFCyxhZ75WJ7ENIrOqjP2cBfb1L/jg/yk=; b=O0IqZS9pLF/vG4QIE4iByaxyAlTdB2CSLV1QF5ngtN4Ymd8ZiTP73/+sRmwbCsutkmUmiA AIiwJyZGxkZXRyCu57x5uajmJdXv3aJ4kaOFSHyoKa9UNwrRcKZQmFfth1lE+iw11ApiIA 2m7C/s7vCvX0LDmgiKiKhBWn4F9rSduyLsC66tGSl5MGZgE5G2cFnZpZS/EeOeNbjfRtrC Gg3bRfnzJKBuvdSUoiGupxkHlWVXTN+3oQ2Y3rLFztSjkvcOAzBduIRD1KcF22rftxLfmL KH7BaJCgx1GCm55eqyIWqnim/8frEAl6CKwFQ+HfFdmbVrO0aExuegMgfoj7zw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1748302437; a=rsa-sha256; cv=none; b=yelANza1GOf6Ssc0pkNuSJocqOD+AdRQQFan6XBhUT9zwZeSAG6sqKt+gpjR5wkf8WwVz6 0F7h3c6y0BhIXGxkZHLr7ynsRrlCvpTaK3l/oLDG1nPhCrDnqcUqaiyJNvw4YIsCqadDfK UXHccx8QX3BbLx31pFUs9a+xfkAdVZrBBQPNOq1Nzjq0O1mUw9qDblbcW2Y54BSLUbIcrD DcO1eFHZfpU+Lzq5OKn2UK0K/4mInL4/U0hAKsVeikTN/dsu+sY5QcPf8UCl4WFsQ7bVQa U5oM4HORq+oF55aeu+NYiVxyz403+7Hoe4uCiuFomb6Qwwfp96bDHrUkumOYcw== 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 4b5sXh70vjzC10; Mon, 26 May 2025 23:33:56 +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 54QNXu8Y043660; Mon, 26 May 2025 23:33:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 54QNXubI043657; Mon, 26 May 2025 23:33:56 GMT (envelope-from git) Date: Mon, 26 May 2025 23:33:56 GMT Message-Id: <202505262333.54QNXubI043657@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 6cbf8a04b186 - main - LinuxKPI: 802.11: mark struct ieee80211_ht_cap __packed List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@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/main X-Git-Reftype: branch X-Git-Commit: 6cbf8a04b1864d933506301cabe213a9c918d968 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=6cbf8a04b1864d933506301cabe213a9c918d968 commit 6cbf8a04b1864d933506301cabe213a9c918d968 Author: Bjoern A. Zeeb AuthorDate: 2025-05-26 23:20:20 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-05-26 23:33:08 +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 MFC after: sunrise Discovered: while testing other features on arm64. --- 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