From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7073F36EAA6 for ; Thu, 26 Feb 2026 01:50:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772070633; cv=none; b=PW5LTFGdsR6Q1NSDZp2l5zU1KBF/GpXuJly89FPKlZpZj2W5GDM/JrGJxvHs1RYrfZeHGCanEle13Vs8Kbksz2jdPIAZYvQE8424tOCjiouGNpXQYFYoLhxljOhxtu1ie/JceNkMwSbmTwKtAR+e2bxydpYVTpw9UBtFOCTP4ZE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772070633; c=relaxed/simple; bh=M6WPq7mZbqGsLt/EumgSldBrI+rZxWlATLbJnQ93Rss=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=KvtaXXzyG94tsQCYMI6GO5Lxfic5gD614ZdMtaS2f6Jawgf6EDpjmapxs7QpgNGzQ8ZK589JkjG8XAh+HKhY0M0TBkiLi8pU/x8FoNHWo6mKLj20ToeD/GWI7FrHGutTuYeAXmebckZhcUUE40E3TCrQrig74DyV6R031uqSBgM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=U95bGc8M; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=hzVHp4St; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="U95bGc8M"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="hzVHp4St" Received: from pps.filterd (m0279872.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 61PN3nZA3095722 for ; Thu, 26 Feb 2026 01:50:31 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= oMgNABMClazAKP8Gmu/DAP8KsivDNJ19jCLyf5xAcXo=; b=U95bGc8Mvty1NG/K CZTWWvG+VRWlhTV6C0VMTsNezId1z78Wv4WHNmx3u8sb6S+8sgpg1T5aCISUlPLU H0hi0FSdElu8FpmvEq7shckpXqyxoXoUSZoQruAOlfjgWO/hRsxOEssKocJpTlkD v+QEz2e3OCst28VWZ1j/pwGQn40IP3DNp5Yj9TF/xJtHJxIfuDE7CCDTcwdHjnNV YfvllzzI+ELBpsE3lP9Y8g6/Y17AhGqcqqtibV85lAW2I+1Aepy/YgbsgRbHmGMS 6WEjRhE4Lk1W70nEW8bulmv7DaQPOaHJtpT93+R8Vufdwu3UE/uXo22ZL+SBRzZq We608w== Received: from mail-pl1-f200.google.com (mail-pl1-f200.google.com [209.85.214.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4cjae0rc3d-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 26 Feb 2026 01:50:31 +0000 (GMT) Received: by mail-pl1-f200.google.com with SMTP id d9443c01a7336-2a90510a6d1so2538655ad.0 for ; Wed, 25 Feb 2026 17:50:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1772070630; x=1772675430; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:content-language:from :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=oMgNABMClazAKP8Gmu/DAP8KsivDNJ19jCLyf5xAcXo=; b=hzVHp4StYKkZrTS90ze+v7vwfNMkbIFpRm0Q7TfRFYQoyfZmQ+gLThXQk7klfre7oD dB+JurM4CrWe0j5t8v9EOrzXuFFGezm6q0ROv1jhXaKy4TwRmpLcQNF+IG+RE9B9dcBl JP6+gso6PSF3xYJDIos1BU1w8bY0QEiwRzaSeczu2lxO3kRdT4khl+Zcq4TaHaa9oA2f XMQVYAZoXIQrX5fgHK6Zjiqh50D4v70RNFVrjk4T9NWMHV7GKbLcLRw7kpBvvECoOj4C nL1uyWbkZgTH2mSVqfRS2UPsIUSJ4XRnMFcDjkdPImjqWb/yAYWoPShax/ZnpnpK+0gA dQMQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772070630; x=1772675430; h=content-transfer-encoding:in-reply-to:content-language:from :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=oMgNABMClazAKP8Gmu/DAP8KsivDNJ19jCLyf5xAcXo=; b=B/vNhvPkJvpi/pvUUhLYXuCUcX6RUkGsZzKP1rIcZ92tztaoFPnYTC1l/Y5WfUW+VQ CqqBo/BIHkNFLha+GpKTWmY+vRag5jucTCJO1+RD530RomXJinjWjYgiR4ALKS4JpPz1 dTEZOiLWCLZehCSXgvFGDI1pIeekEMn/ldOko5pytYfSFIZZSXd8WA+1IK02YSwDc4f/ o6jbffE4gofUqmY+58abJHIGNku3LDzRhROCst4p0B6AmxgoWPlBysOlInS4sK9b0ljV b+Ku/K5ehwkop2Z9Onn0m0bFm/1dftIkJbmTvEFalP5CnlUqtizwQ803wLxEHNbYj01T 1zkA== X-Forwarded-Encrypted: i=1; AJvYcCWf4VZBLx4iqUCZxRTOdXkCcS7iY9s+JNPlkdjhECnnMXWjW6PioLQylrpAR2ZjEfTUwuybGrAb0tULPwI=@vger.kernel.org X-Gm-Message-State: AOJu0YwKayVWoINM5Wdtuhcw0r9DOLVYP2hO8nsGyyBGzndYzPG0uITI oq6TeJpfwFw5wjkNFHlRQjYQcQcayQhwLySXsPYLfFRy+w1jr/goNlU+B5nBCA1s288w3NHcTpa 2zsWlKhzNTPfh/P8x+ulo8vkYvt5vvYHzeJVFooWxEMtXbHF4+iEqaf10U5pAqsbbKOo= X-Gm-Gg: ATEYQzxIfG1vSrqFyN8n8IhEQVrQB1ka7G2b+Q+WkQgwpLEP4f9gdWe2RkwxbNv0rN2 rULGUp8eyFH2P+QwOoDrgRLsjgCZh6mNZLdLHrVzAETxZC0dGlpLsFeba/fp7LzwDXnOs30rpBZ 4zpwQUEXIRG9z7cAU3G+bi0lYh6csWPrM3D4hKAxz/ZUSp5MDj5KO2s7nToeZdu25y284BucNjb 4NSjJqa9XT3ZXlf4HnQzyDhaAy7MnpfCE3WoIXcUj6+kZI0/1UIu5twMaa8idiF6RbZXgQl6QMx M2vNfDSrv5WgUs1Bb2EAmjETpzbd7N9EdD2OjPyVp7k19uDBBZ/1Ek4GTm4OJmhwPq48bx4omDl 0MYLyfQFslNs1ZiZG4361zyz7PN6h9RfPrLJsdJjKRfo193Fo/yp/IhfLzJ65OpIaDQrwpf0gi+ xSYxbUXr9QGEqJNakmbxk= X-Received: by 2002:a17:902:d541:b0:2aa:e55b:22c4 with SMTP id d9443c01a7336-2adf78fd098mr9996805ad.9.1772070629929; Wed, 25 Feb 2026 17:50:29 -0800 (PST) X-Received: by 2002:a17:902:d541:b0:2aa:e55b:22c4 with SMTP id d9443c01a7336-2adf78fd098mr9996465ad.9.1772070629397; Wed, 25 Feb 2026 17:50:29 -0800 (PST) Received: from [10.133.33.106] (tpe-colo-wan-fw-bordernet.qualcomm.com. [103.229.16.4]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2adfb5c1976sm5861215ad.22.2026.02.25.17.50.27 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 25 Feb 2026 17:50:29 -0800 (PST) Message-ID: <34363bc5-2439-4579-8999-67dedded39d0@oss.qualcomm.com> Date: Thu, 26 Feb 2026 09:50:26 +0800 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH ath-next v2 2/4] wifi: ath12k: avoid long fw_stats waits on vdev stats hot path To: m.limarencko@yandex.ru, jjohnson@kernel.org Cc: linux-wireless@vger.kernel.org, ath12k@lists.infradead.org, linux-kernel@vger.kernel.org References: <20260212121746.329619-1-m.limarencko@yandex.ru> <20260212121746.329619-3-m.limarencko@yandex.ru> From: Baochen Qiang Content-Language: en-US In-Reply-To: <20260212121746.329619-3-m.limarencko@yandex.ru> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMjI2MDAxNCBTYWx0ZWRfX6+YWXWpJyvkw pTAj2BKnkDxcUSvZ+UJ6sYsck5v0SngaGmLf6HIBBks6O7tVGYan9iOhh+l8xqcwMvYlmCC7JwQ 4YSWTx16GpWkgYfWsIPPKauHQbfNIEnGPWTjgw0t5D5DMBUv2ObeDv99asx6pf7QA1CEatl26Mc i55NVv2z2z5PU1CXLwJK1VTpDqyCZdfKan0qPavbNlURfGBrVMwRSNBD+30nz9J+7H0H+51gZNH Th1G61A6EoxSa6FRlcYL1GJGDaPJOrS/vvAXo0eFSoFJk6Cl70X1tFebjbY0hT5idqgB97YgAv4 wbl28sB9tasffQ9QvR+9N73yRvY6rBYtm4kUnbDRfjk8/Un0jcg+G3hbq19MRxD6jXPBqDSLOFN Bsj19F0Sqdr/2UXjcHdk/jFL8ajXfyNE7h2YJ4DQgAMnRKP9Jma9YGq8WKT3JioJvx9jaGZpr4V zOtx1Ty25PK/YygWZvg== X-Authority-Analysis: v=2.4 cv=O7Q0fR9W c=1 sm=1 tr=0 ts=699fa6e7 cx=c_pps a=IZJwPbhc+fLeJZngyXXI0A==:117 a=nuhDOHQX5FNHPW3J6Bj6AA==:17 a=IkcTkHD0fZMA:10 a=HzLeVaNsDn8A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=yx91gb_oNiZeI1HMLzn7:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=vaJtXVxTAAAA:8 a=w32g7tGSt65Kz2FTHNQA:9 a=QEXdDO2ut3YA:10 a=uG9DUKGECoFWVXl0Dc02:22 X-Proofpoint-ORIG-GUID: 5ZJOxxmHhsmDM1VNtlwiEqscsNoNURQr X-Proofpoint-GUID: 5ZJOxxmHhsmDM1VNtlwiEqscsNoNURQr X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-25_04,2026-02-25_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 adultscore=0 impostorscore=0 lowpriorityscore=0 phishscore=0 spamscore=0 clxscore=1015 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2602130000 definitions=main-2602260014 On 2/12/2026 8:17 PM, m.limarencko@yandex.ru wrote: > From: Mikhail Limarenko > > Station info requests can trigger frequent VDEV stat pulls from > > user space (iw/NM polling). > > On affected firmware, waiting 3 seconds for fw_stats_done causes > > repeated stalls and visible hitches. > > Use a short timeout for VDEV_STAT requests and skip unnecessary > > waits for stats types that do not need completion > > synchronization. once again, can you please try https://lore.kernel.org/ath12k/20260129-ath12k-fw-stats-fixes-v1-0-55d66064f4d5@oss.qualcomm.com/ > > Tested-on: QCNFA765 (WCN785x), kernel 6.18.5+deb13-amd64 > Signed-off-by: Mikhail Limarenko > --- > drivers/net/wireless/ath/ath12k/mac.c | 22 ++++++++++++++++++++-- > 1 file changed, 20 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/wireless/ath/ath12k/mac.c b/drivers/net/wireless/ath/ath12k/mac.c > index 095b49a..1b550e9 100644 > --- a/drivers/net/wireless/ath/ath12k/mac.c > +++ b/drivers/net/wireless/ath/ath12k/mac.c > @@ -4829,6 +4829,7 @@ int ath12k_mac_get_fw_stats(struct ath12k *ar, > { > struct ath12k_base *ab = ar->ab; > struct ath12k_hw *ah = ath12k_ar_to_ah(ar); > + unsigned long done_timeout = 3 * HZ; > unsigned long time_left; > int ret; > > @@ -4859,15 +4860,32 @@ int ath12k_mac_get_fw_stats(struct ath12k *ar, > return -ETIMEDOUT; > } > > + /* VDEV stats are queried frequently from station info paths (e.g. iw/NM). > + * On buggy firmware this path can timeout repeatedly and block callers for > + * multiple seconds; keep the hot path responsive while preserving behavior > + * for other stats types. > + */ > + if (param->stats_id & WMI_REQUEST_VDEV_STAT) > + done_timeout = msecs_to_jiffies(200); > + > + /* Non-vdev/bcn stats are handled in a single event. */ > + if (!(param->stats_id & (WMI_REQUEST_VDEV_STAT | WMI_REQUEST_BCN_STAT))) > + return 0; > + > /* Firmware sends WMI_UPDATE_STATS_EVENTID back-to-back > * when stats data buffer limit is reached. fw_stats_complete > * is completed once host receives first event from firmware, but > * still there could be more events following. Below is to wait > * until firmware completes sending all the events. > */ > - time_left = wait_for_completion_timeout(&ar->fw_stats_done, 3 * HZ); > + time_left = wait_for_completion_timeout(&ar->fw_stats_done, done_timeout); > if (!time_left) { > - ath12k_warn(ab, "time out while waiting for fw stats done\n"); > + if (param->stats_id & WMI_REQUEST_VDEV_STAT) > + ath12k_dbg(ab, ATH12K_DBG_WMI, > + "time out while waiting for fw stats done (stats_id 0x%x)\n", > + param->stats_id); > + else > + ath12k_warn(ab, "time out while waiting for fw stats done\n"); > return -ETIMEDOUT; > } >