Re: [PATCH v2 2/5] wifi: ath11k: use plain access for descriptor length

From: Baochen Qiang
Date: Wed Jun 25 2025 - 06:00:29 EST




On 6/4/2025 10:34 PM, Johan Hovold wrote:
> The read memory barrier added by commit 6d037a372f81 ("wifi: ath11k: fix
> ring-buffer corruption") is enough to guarantee ordering also for plain
> descriptor accesses if the length helper is ever inlined so drop the
> unnecessary READ_ONCE().
>
> Tested-on: WCN6855 hw2.1 WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3.6510.41
>
> Signed-off-by: Johan Hovold <johan+linaro@xxxxxxxxxx>
> ---
> drivers/net/wireless/ath/ath11k/hal.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/wireless/ath/ath11k/hal.c b/drivers/net/wireless/ath/ath11k/hal.c
> index 921114686ba3..b1f5a927dddd 100644
> --- a/drivers/net/wireless/ath/ath11k/hal.c
> +++ b/drivers/net/wireless/ath/ath11k/hal.c
> @@ -599,7 +599,7 @@ u32 ath11k_hal_ce_dst_status_get_length(void *buf)
> struct hal_ce_srng_dst_status_desc *desc = buf;
> u32 len;
>
> - len = FIELD_GET(HAL_CE_DST_STATUS_DESC_FLAGS_LEN, READ_ONCE(desc->flags));
> + len = FIELD_GET(HAL_CE_DST_STATUS_DESC_FLAGS_LEN, desc->flags);
> desc->flags &= ~HAL_CE_DST_STATUS_DESC_FLAGS_LEN;
>
> return len;

Reviewed-by: Baochen Qiang <quic_bqiang@xxxxxxxxxxx>