[lvc-project] [PATCH 1/2] wifi: ath11k: modify null check logic in ath11k_ce_rx_post_pipe()
tascad at altlinux.org
tascad at altlinux.org
Mon Dec 22 13:21:43 MSK 2025
From: Mikhail Lobanov <m.lobanov at rosalinux.ru>
The previous logic in ath11k_ce_rx_post_pipe() incorrectly required both
dest_ring and status_ring to be NULL in order to exit the function.
This caused the function to continue even if only one of the pointers
was NULL, potentially leading to null pointer dereferences in
ath11k_ce_rx_buf_enqueue_pipe().
Fix the condition by modifying the logic so that the function returns
early if either dest_ring or status_ring is NULL.
Found by Linux Verification Center (linuxtesting.org) with SVACE.
Fixes: d5c65159f289 ("ath11k: driver for Qualcomm IEEE 802.11ax devices")
Signed-off-by: Mikhail Lobanov <m.lobanov at rosalinux.ru>
Acked-by: Jeff Johnson <quic_jjohnson at quicinc.com>
Link: https://lore.kernel.org/r/20240909150824.28195-1-m.lobanov@rosalinux.ru
Signed-off-by: Dmitry Mihalchenko <tascad at altlinux.org>
---
drivers/net/wireless/ath/ath11k/ce.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/wireless/ath/ath11k/ce.c b/drivers/net/wireless/ath/ath11k/ce.c
index a7a163621b21..dd4f21a0db73 100644
--- a/drivers/net/wireless/ath/ath11k/ce.c
+++ b/drivers/net/wireless/ath/ath11k/ce.c
@@ -326,7 +326,7 @@ static int ath11k_ce_rx_post_pipe(struct ath11k_ce_pipe *pipe)
dma_addr_t paddr;
int ret = 0;
- if (!(pipe->dest_ring || pipe->status_ring))
+ if (!pipe->dest_ring || !pipe->status_ring)
return 0;
spin_lock_bh(&ab->ce.ce_lock);
--
2.50.1
More information about the lvc-project
mailing list