From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f43.google.com (mail-pj1-f43.google.com [209.85.216.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 608322C21E6 for ; Fri, 12 Jun 2026 15:25:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.43 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781277902; cv=none; b=Su6O5WLFwLpPfJKeKgxvLTMfqz+hujWvY7rQJwkNml+VumtTAyeAYSLAvNI7TcEZs0RIufBq0V65yB8QL2VXiZ0Om3m+JOzCa5blX7i0HbW6Zoo3VZM1/Yx++5S3tM7ntKfG+yS8JbvtPm3+ij5gMCns97numEK6UCduoKco2xE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781277902; c=relaxed/simple; bh=78U7QauUk0dnW2o0xhv1MebU5tpI7bWkDT6+gCoo0Uk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=VyFZIQsjXSI/guv8jz3q1JFwCQpHLhKigkiNbksDecjlcYwyiSODI/huf2/LsfqQcN9vJScWGK4cK3qxp/HsVRRA3ByKk7Sdp5g7iV+zzFzpduUAc4tYiYXyoV1M39sEG9W62V5fHedvSkxnz1LRHpwB6BMPs6v1zrbM7IcFb4c= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Hjznpygb; arc=none smtp.client-ip=209.85.216.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Hjznpygb" Received: by mail-pj1-f43.google.com with SMTP id 98e67ed59e1d1-36b9ec98144so869878a91.1 for ; Fri, 12 Jun 2026 08:25:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1781277900; x=1781882700; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Nl2dpQV7rPZXhzrcHJ01w/u7zK7v9/YyGk77q76ol7k=; b=HjznpygbjDjNobyzc5F2kVGKCluooSUbn3HmIkZ5pgtQFovXbv0eea1lUa1xkL79Wc aiSHgzwEoirjIg3Qme2mXoVoK1ON/fkrcfsxybgh0I/dJUtPcfG8u1HbMfie3pqPCB92 D2LtrQ1uDW9duaNs1HVeEK9Tq/p4ykK7S0RrN96YsSKzBIYhBBxGQJBlsSfx+bZLJkV+ YT9FZbFqFGlXNzUWfhcqWuzRrqquO7oH0i9QbBj4EGZ06JnA9yKTtbIenVd5UntKmUTI EJBCXioEVlJ3gSjDSF3/XlFBue7DXkuR4MoBN2a6X6ScdHRi70fl71uYHC3rHhkVfYqN BBbA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1781277900; x=1781882700; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=Nl2dpQV7rPZXhzrcHJ01w/u7zK7v9/YyGk77q76ol7k=; b=THDrKQT6PVGrX0DgiObg0QeVoAbvtBxM2QPNqTIx3Q/sXNwZcB7WxuYit4kULCL7Ah Vj9wPZ7+JLLox4DY/RLRyYt7EaTU+cEpUX0DMVPNcNHEplfbLSzA9MikN8Lh/7AZMvhG g3u0ssEm5SIG6kJ0WOht0t/g3Zik1igfeMmv7cm9wCn8OmH5mYwio9+NuZfc33voegq+ czA8uYm0bA1BaWPUa/2qxmAW1L5xJe5JPGt3eKKTtY+Ioh874c+Rrma3Tlv5Z4J0x8SQ zU2UIb0PL+zKPP4FkJR07M+K+BbggPTBLmVv493Z5yM7OtJpk2XJnioENIjgxUT62kqE eUWQ== X-Forwarded-Encrypted: i=1; AFNElJ8m8c0+ep0N6tGHAbSJfjGBLe5N75oBcZH7IU0/tj2CP0mtmr4S7c1OFnispz6eB2+LoUlBbg1R/Ed5jcw=@vger.kernel.org X-Gm-Message-State: AOJu0Yw6RHQGTY7dM9cLVaRS38bFzlnfQyrX8QsGBXnW1ptAH3TzwlrA ZD2v18rFQfTYOgVbuZOS7N54vqqKqndo9dishV9v1byF9wQATmSEOkdz X-Gm-Gg: Acq92OGgAekD22yTegNX8ORMpUupLGLS0KCJG0cwv+yV9K0DRbyz7s6TOPLWnUWELzG bG0PJcG9fVRvBeaQJ5ivefhpFIhv9iKnC4zOiZWXxmGuJnQRKDEhD1+MVLNA9yd47xfm8kSijTW iPYk21g5ZD2t8SD5StpAzgSuJslMtoRPtHPfL0hDRFRm6u9BNMdE1RKTb5SUtfyRmn4OprbdUv1 +Ek8nJNa31Q72qBqq1qOq1bGWWhArf+vrM/DoaNc18KuIpP1v8cJie5CF6cBj6XJSk2Mnh2IAMn EockUJ5miCBAhrrcu8VuDDCfxbRM+HCUgX/9Jcn1fQO0AHwDJf9rvWx4Xnh/N9LDe8v1mlNZMFZ iI/sfbCw7oxC7AtYvaTEoNCh+w2av6kAE1vhNMS0Z1DzQJRIzbouoSsFqAqR+q1dSwd+IQRpkx5 SREv4ppDMkJfiicxGTxjYNLutjhGd1KtH2HcCDwcGJmU9TZ42O0q/hJ86fLcv39rU3Wzmi7Am89 CEm+r8Gtg== X-Received: by 2002:a17:90b:3cd0:b0:36d:a510:f908 with SMTP id 98e67ed59e1d1-37a01846f18mr3999585a91.5.1781277899664; Fri, 12 Jun 2026 08:24:59 -0700 (PDT) Received: from KRHW1CJW23.bytedance.net ([2408:8459:881:fe1a:4533:6957:44c1:cf77]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-37a1eba8ec3sm2605424a91.3.2026.06.12.08.24.49 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 12 Jun 2026 08:24:59 -0700 (PDT) From: Zhao Li To: johannes@sipsolutions.net, lachlan.hodges@morsemicro.com Cc: linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2] wifi: mac80211: avoid non-S1G AID fallback for S1G assoc Date: Fri, 12 Jun 2026 23:24:41 +0800 Message-ID: <20260612152440.25955-2-enderaoelyther@gmail.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260612133649.92630-2-enderaoelyther@gmail.com> References: <20260612133649.92630-2-enderaoelyther@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit When assoc_data->s1g is set and no AID Response element is present, falling back to mgmt->u.assoc_resp.aid reads the non-S1G association-response layout. Keep the fallback for non-S1G only. If a successful S1G association response omits the AID Response element, abandon the association instead of proceeding with AID 0. Initialize aid to 0 for other S1G responses so the later mask and logging flow keeps a defined value without reading the non-S1G layout. Fixes: 2a8a6b7c4cb0 ("wifi: mac80211: handle station association response with S1G") Assisted-by: Codex:gpt-5.5 Assisted-by: Claude:claude-opus-4.8 Signed-off-by: Zhao Li --- net/mac80211/mlme.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index b98ddfa3003e1..ddd3479f0b403 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -6659,7 +6659,7 @@ static void ieee80211_rx_mgmt_assoc_resp(struct ieee80211_sub_if_data *sdata, { struct ieee80211_if_managed *ifmgd = &sdata->u.mgd; struct ieee80211_mgd_assoc_data *assoc_data = ifmgd->assoc_data; - u16 capab_info, status_code, aid; + u16 capab_info, status_code, aid = 0; struct ieee80211_elems_parse_params parse_params = { .bss = NULL, .link_id = -1, @@ -6737,8 +6737,10 @@ static void ieee80211_rx_mgmt_assoc_resp(struct ieee80211_sub_if_data *sdata, if (elems->aid_resp) aid = le16_to_cpu(elems->aid_resp->aid); - else + else if (!assoc_data->s1g) aid = le16_to_cpu(mgmt->u.assoc_resp.aid); + else if (status_code == WLAN_STATUS_SUCCESS) + goto abandon_assoc; /* * The 5 MSB of the AID field are reserved for a non-S1G STA. For -- 2.50.1 (Apple Git-155)