Commit db0889ab authored by Karthikeyan Periyasamy's avatar Karthikeyan Periyasamy Committed by Kalle Valo

ath11k: fix rcu lock protect in peer assoc confirmation

ath11k_mac_get_ar_by_vdev_id() get protected under rcu lock
and unlock. peer association confirmation event get used this API
without rcu protection, so corrected it.
Signed-off-by: default avatarKarthikeyan Periyasamy <periyasa@codeaurora.org>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
parent 6a0c3702
...@@ -5345,15 +5345,18 @@ static void ath11k_peer_assoc_conf_event(struct ath11k_base *ab, struct sk_buff ...@@ -5345,15 +5345,18 @@ static void ath11k_peer_assoc_conf_event(struct ath11k_base *ab, struct sk_buff
"peer assoc conf ev vdev id %d macaddr %pM\n", "peer assoc conf ev vdev id %d macaddr %pM\n",
peer_assoc_conf.vdev_id, peer_assoc_conf.macaddr); peer_assoc_conf.vdev_id, peer_assoc_conf.macaddr);
rcu_read_lock();
ar = ath11k_mac_get_ar_by_vdev_id(ab, peer_assoc_conf.vdev_id); ar = ath11k_mac_get_ar_by_vdev_id(ab, peer_assoc_conf.vdev_id);
if (!ar) { if (!ar) {
ath11k_warn(ab, "invalid vdev id in peer assoc conf ev %d", ath11k_warn(ab, "invalid vdev id in peer assoc conf ev %d",
peer_assoc_conf.vdev_id); peer_assoc_conf.vdev_id);
rcu_read_unlock();
return; return;
} }
complete(&ar->peer_assoc_done); complete(&ar->peer_assoc_done);
rcu_read_unlock();
} }
static void ath11k_update_stats_event(struct ath11k_base *ab, struct sk_buff *skb) static void ath11k_update_stats_event(struct ath11k_base *ab, struct sk_buff *skb)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment