[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20180611210946.241341-1-briannorris@chromium.org>
Date: Mon, 11 Jun 2018 14:09:43 -0700
From: Brian Norris <briannorris@...omium.org>
To: Kalle Valo <kvalo@....qualcomm.com>
Cc: ath10k@...ts.infradead.org, linux-wireless@...r.kernel.org,
Govind Singh <govinds@...eaurora.org>,
<linux-kernel@...r.kernel.org>,
Brian Norris <briannorris@...omium.org>
Subject: [PATCH 1/4] ath10k: snoc: use correct bus-specific pointer in RX retry
We're 'ath10k_snoc', not 'ath10k_pci'. This probably means we're
accessing junk data in ath10k_snoc_rx_replenish_retry(), unless
'ath10k_snoc' and 'ath10k_pci' happen to have very similar struct
layouts.
Noticed by inspection.
Fixes: d915105231ca ("ath10k: add hif rx methods for wcn3990")
Signed-off-by: Brian Norris <briannorris@...omium.org>
---
It's possible this would be a for-4.18 target, since the buggy patch is
in the -rc1 merge. But this driver is not fully operational yet. Also,
I'm sending some companion refactorings to help avoid this bug. They
probably aren't 4.18 material.
Let me know if I should do anything differently.
drivers/net/wireless/ath/ath10k/snoc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/wireless/ath/ath10k/snoc.c b/drivers/net/wireless/ath/ath10k/snoc.c
index ee74e0060504..c7cfc9c9b3d7 100644
--- a/drivers/net/wireless/ath/ath10k/snoc.c
+++ b/drivers/net/wireless/ath/ath10k/snoc.c
@@ -449,7 +449,7 @@ static void ath10k_snoc_htt_rx_cb(struct ath10k_ce_pipe *ce_state)
static void ath10k_snoc_rx_replenish_retry(struct timer_list *t)
{
- struct ath10k_pci *ar_snoc = from_timer(ar_snoc, t, rx_post_retry);
+ struct ath10k_snoc *ar_snoc = from_timer(ar_snoc, t, rx_post_retry);
struct ath10k *ar = ar_snoc->ar;
ath10k_snoc_rx_post(ar);
--
2.18.0.rc1.242.g61856ae69a-goog
Powered by blists - more mailing lists