]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
wifi: ath12k: fix dest ring-buffer corruption when ring is full
authorJohan Hovold <johan+linaro@kernel.org>
Tue, 17 Jun 2025 08:44:02 +0000 (10:44 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 28 Aug 2025 14:28:35 +0000 (16:28 +0200)
commitdaa2b66fa569ce3746fea52c172c7607ce2ed2c7
tree89401100fe4ff48ce884ceb0ca69656c0cf26e67
parentbfd4918b2b9b1fab4d779415bd4c930a59b33075
wifi: ath12k: fix dest ring-buffer corruption when ring is full

commit ed32169be1ccb9b1a295275ba7746dc6bf103e80 upstream.

Add the missing memory barriers to make sure that destination ring
descriptors are read before updating the tail pointer (and passing
ownership to the device) to avoid memory corruption on weakly ordered
architectures like aarch64 when the ring is full.

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-5-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/hal.c