summaryrefslogtreecommitdiff
path: root/drivers/platform/msm
diff options
context:
space:
mode:
authorUtkarsh Saxena <usaxena@codeaurora.org>2017-04-26 15:06:09 +0530
committerUtkarsh Saxena <usaxena@codeaurora.org>2017-04-26 15:06:09 +0530
commit36dfd739610cf8829f054af25a3b2f57854778e1 (patch)
treed5992ffe6c53c3211802f9e7775d1e5c008c2d93 /drivers/platform/msm
parent172210b6bf2572b851f07a90e1d360cf2c3a4293 (diff)
msm: ipa: Fix race condition between shared memory
Protect the common shared wlan_comm_desc_list with spin lock to avoid the race condition. Change-Id: I02ef6c6b663340711e0e2f766424d642aaa8d7af Acked-by: Mohammed Javid <mjavid@qti.qualcomm.com> Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
Diffstat (limited to 'drivers/platform/msm')
-rw-r--r--drivers/platform/msm/ipa/ipa_v2/ipa_dp.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/platform/msm/ipa/ipa_v2/ipa_dp.c b/drivers/platform/msm/ipa/ipa_v2/ipa_dp.c
index 2fdb20d99ce2..23c8a5059c3b 100644
--- a/drivers/platform/msm/ipa/ipa_v2/ipa_dp.c
+++ b/drivers/platform/msm/ipa/ipa_v2/ipa_dp.c
@@ -2046,11 +2046,13 @@ static void ipa_alloc_wlan_rx_common_cache(u32 size)
goto fail_dma_mapping;
}
+ spin_lock_bh(&ipa_ctx->wc_memb.wlan_spinlock);
list_add_tail(&rx_pkt->link,
&ipa_ctx->wc_memb.wlan_comm_desc_list);
rx_len_cached = ++ipa_ctx->wc_memb.wlan_comm_total_cnt;
ipa_ctx->wc_memb.wlan_comm_free_cnt++;
+ spin_unlock_bh(&ipa_ctx->wc_memb.wlan_spinlock);
}