From 94b4d020a9edfe223671c5aa350753265c5dd431 Mon Sep 17 00:00:00 2001 From: Miles Hu Date: Fri, 30 Aug 2019 10:44:38 -0700 Subject: [PATCH] ath11k: fix htt stats module not handle multiple skbs remove check to allow more skbs parsed. Signed-off-by: Miles Hu --- drivers/net/wireless/ath/ath11k/debug_htt_stats.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) --- a/drivers/net/wireless/ath/ath11k/debug_htt_stats.c +++ b/drivers/net/wireless/ath/ath11k/debug_htt_stats.c @@ -4305,6 +4305,7 @@ void ath11k_dbg_htt_ext_stats_handler(st u32 len; u64 cookie; int ret; + bool send_completion = false; u8 pdev_id; msg = (struct ath11k_htt_extd_stats_msg *)skb->data; @@ -4329,10 +4330,8 @@ void ath11k_dbg_htt_ext_stats_handler(st return; spin_lock_bh(&ar->debug.htt_stats.lock); - if (stats_req->done) { - spin_unlock_bh(&ar->debug.htt_stats.lock); - return; - } + if (!stats_req->done) + send_completion = true; stats_req->done = true; spin_unlock_bh(&ar->debug.htt_stats.lock); @@ -4343,7 +4342,8 @@ void ath11k_dbg_htt_ext_stats_handler(st if (ret) ath11k_warn(ab, "Failed to parse tlv %d\n", ret); - complete(&stats_req->cmpln); + if (send_completion) + complete(&stats_req->cmpln); } static ssize_t ath11k_read_htt_stats_type(struct file *file,