From patchwork Fri Aug 16 04:32:37 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alex Gavin X-Patchwork-Id: 1973051 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; secure) header.d=lists.infradead.org header.i=@lists.infradead.org header.a=rsa-sha256 header.s=bombadil.20210309 header.b=UYM62aUw; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=candelatech.com header.i=@candelatech.com header.a=rsa-sha256 header.s=default header.b=F2SUpmNW; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.infradead.org (client-ip=2607:7c80:54:3::133; helo=bombadil.infradead.org; envelope-from=hostap-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org; receiver=patchwork.ozlabs.org) Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:3::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4WlTdX6ZXBz1yfB for ; Fri, 16 Aug 2024 14:33:34 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Subject:From:Cc:To:MIME-Version:Date: Message-ID:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=F/AjN4s6dQYxx4fIfKakXJZER+jWt294pgE0W++787E=; b=UYM62aUwc2ZUR6 JKJqqW5qSDC/VUCAFdu9qrlKn8kZ4m5Xdoy7IlUc5lRqxrk+pB6e9Dt4Zdk+HFUpXw68rWB/8BvaY 1wLXSnYJVLuiFnYIbAMzHAVix0Gf3UXUIJ7JTxweyRt6sTmbM3ekPF8S5Ff26okIZq628zGx13NM8 b0nPg+O+CLR316+IkL3d5uxiFJF0bzed1jUrtVwJZVnYOb2QBXRZtZZuXln9Yt4ds8hTsCSVBxZII Tmm6SudShc06RFbfDTccVpM73eLmuX6HwXz0p4YaCSaq8HGTLAYNcipohnSRq9rg1YLdAW4aHlhaB 081FjYNH7XdTxmxsMfLA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1seodq-0000000Bm7Z-3qrz; Fri, 16 Aug 2024 04:32:46 +0000 Received: from dispatch1-us1.ppe-hosted.com ([67.231.154.164]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1seodo-0000000Bm70-0Bjn for hostap@lists.infradead.org; Fri, 16 Aug 2024 04:32:45 +0000 X-Virus-Scanned: Proofpoint Essentials engine Received: from mail3.candelatech.com (mail.candelatech.com [208.74.158.173]) by mx1-us1.ppe-hosted.com (PPE Hosted ESMTP Server) with ESMTP id B036F80006C for ; Fri, 16 Aug 2024 04:32:41 +0000 (UTC) Received: from [10.113.43.138] (unknown [67.201.193.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail3.candelatech.com (Postfix) with ESMTPSA id 2362B13C2B0; Thu, 15 Aug 2024 21:32:39 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 mail3.candelatech.com 2362B13C2B0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=candelatech.com; s=default; t=1723782760; bh=K/FpfcP3l0a3np2kE/GsXSZx6mx2AZN2a1iKG/qJ+FU=; h=Date:To:Cc:From:Subject:From; b=F2SUpmNWz3U/AdCJKl6A/NYxGPt4zx4OHJy6c7Yd7bjziheiN2AFdvQ3k1TezJSxz t4GdVsIE6PBuQqFHf5/cWQyShpvW3e/vru1aUWuw7IWQiRFZwv9VP2yYOUrIHGEVec jHRSUAg6QBwMpHXx1zwHOtyzMjcURms1x4txh+Ag= Message-ID: <9353656c-ef90-4f55-9b48-d1d130aa2eb8@candelatech.com> Date: Thu, 15 Aug 2024 21:32:37 -0700 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US To: hostap@lists.infradead.org Cc: Ben Greear From: Alex Gavin Subject: hostapd AX Client Association Issue w/ 6GHz 320MHz AP X-MDID: 1723782762-4meycuHlWTMR X-MDID-O: us5;at1;1723782762;4meycuHlWTMR;;19b12d1ff1464714abe912ee75a411c0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240815_213244_175854_7B3DAB20 X-CRM114-Status: GOOD ( 12.38 ) X-Spam-Score: -2.8 (--) X-Spam-Report: Spam detection software, running on the system "bombadil.infradead.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: To Whom It May Concern: When testing a mt7996-based 6GHz 320MHz AP on a custom 6.10.3+ kernel and recent upstream hostapd (commit 70b8f64), AX clients will not associate. However, BE clients will associate. Separately, all A [...] Content analysis details: (-2.8 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] 0.0 RCVD_IN_VALIDITY_SAFE_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. [67.231.154.164 listed in sa-accredit.habeas.com] 0.0 RCVD_IN_VALIDITY_CERTIFIED_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. [67.231.154.164 listed in sa-trusted.bondedsender.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [67.231.154.164 listed in list.dnswl.org] -0.0 T_SCC_BODY_TEXT_LINE No description available. 0.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. [67.231.154.164 listed in bl.score.senderscore.com] X-BeenThere: hostap@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Hostap" Errors-To: hostap-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org To Whom It May Concern: When testing a mt7996-based 6GHz 320MHz AP on a custom 6.10.3+ kernel and recent upstream hostapd (commit 70b8f64), AX clients will not associate. However, BE clients will associate. Separately, all AX and BE clients will associate when the AP is configured to 160MHz. In all cases, the clients are configured to the 6GHz BSSID. The following is a selection from the configuration file when configuring the AP for 320MHz operation: ieee80211be=1 channel=37 op_class=137 he_oper_centr_freq_seg0_idx=31 eht_oper_centr_freq_seg0_idx=31 he_6ghz_reg_pwr_type=0 With this configuration, the 'Channel Width' in the 'Control' field is set to '0' (20 MHz). This is located in the '6GHz Operation Information' section of the 'HE Operation' IE. Beacons from other 320MHz-configured APs (e.g. ASUS RT-BE96U, Netgear RS700S) show the 'Channel Width' field set to '3' (160MHz or 80+80MHz). Digging into the beacon creation code for this IE, 'center_idx_to_bw_6ghz()' returns '4' for 320MHz operation. This overflows the two bit 'Channel Width' field, setting 'Channel Width' field to 0 (also setting the 'Duplicate Beacon' field to '1'). With the following hacked changes, I am able to associate AX clients again: Can someone double check this partial configuration? I'm happy to provide the full config if needed. If the config is correct, I am happy to submit this as a proper patch with any needed modifications. Best, diff --git a/src/ap/ieee802_11_he.c b/src/ap/ieee802_11_he.c index a2deda6c4..8b00abad1 100644 --- a/src/ap/ieee802_11_he.c +++ b/src/ap/ieee802_11_he.c @@ -252,7 +252,7 @@ u8 * hostapd_eid_he_operation(struct hostapd_data *hapd, u8 *eid) * bits 3-5: Regulatory Info */ /* Channel Width */ - if (seg1) + if (seg1 || oper_chwidth == CONF_OPER_CHWIDTH_320MHZ) control = 3; else control = center_idx_to_bw_6ghz(seg0);