]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
wifi: ath12k: fix dest ring-buffer corruption
authorJohan Hovold <johan+linaro@kernel.org>
Tue, 17 Jun 2025 08:43:59 +0000 (10:43 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 28 Aug 2025 14:34:21 +0000 (16:34 +0200)
commitc2e38738743917e880a6cf49525ec2cc1b53f4ad
tree0dad300abb0571cf65b96ef138aec808987581ed
parentb860da3ace17b21db36371e770c76af610d3bf57
wifi: ath12k: fix dest ring-buffer corruption

commit 8157ce533a60521f21d466eb4de45d9735b19484 upstream.

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 ath12k_hal_srng_access_begin() helper for
symmetry with follow-on fixes for source ring buffer corruption which
will add barriers to ath12k_hal_srng_access_end().

Tested-on: WCN7850 hw2.0 WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3

Fixes: d889913205cf ("wifi: ath12k: driver for Qualcomm Wi-Fi 7 devices")
Cc: stable@vger.kernel.org # 6.3
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Baochen Qiang <quic_bqiang@quicinc.com>
Link: https://patch.msgid.link/20250617084402.14475-2-johan+linaro@kernel.org
Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/wireless/ath/ath12k/ce.c
drivers/net/wireless/ath/ath12k/hal.c