]> git.ipfire.org Git - thirdparty/linux.git/commit
wifi: ath11k: fix dest ring-buffer corruption
authorJohan Hovold <johan+linaro@kernel.org>
Wed, 4 Jun 2025 14:34:53 +0000 (16:34 +0200)
committerJeff Johnson <jeff.johnson@oss.qualcomm.com>
Thu, 26 Jun 2025 23:10:47 +0000 (16:10 -0700)
commit8c1ba5091fa9a2d1478da63173b16a701bdf86bb
treeb0591c2d95193d7b55e9c0e64261036eaa9b86ed
parenta44958c83e52238996a48e7d604167c9b9d0a529
wifi: ath11k: fix dest ring-buffer corruption

Add the missing memory barrier to make sure that destination ring
descriptors are read after the head pointers to avoid using stale data
on weakly ordered architectures like aarch64.

The barrier is added to the ath11k_hal_srng_access_begin() helper for
symmetry with follow-on fixes for source ring buffer corruption which
will add barriers to ath11k_hal_srng_access_end().

Tested-on: WCN6855 hw2.1 WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3.6510.41

Fixes: d5c65159f289 ("ath11k: driver for Qualcomm IEEE 802.11ax devices")
Cc: stable@vger.kernel.org # 5.6
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Baochen Qiang <quic_bqiang@quicinc.com>
Link: https://patch.msgid.link/20250604143457.26032-2-johan+linaro@kernel.org
Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
drivers/net/wireless/ath/ath11k/ce.c
drivers/net/wireless/ath/ath11k/dp_rx.c
drivers/net/wireless/ath/ath11k/hal.c