android_kernel_xiaomi_sm8350/core/dp
Deepak Dhamdhere f74d6f8a97 qcacld-3.0: Fix peer unmap/map handling during roaming
Roam_synch indication processing in host performs peer detach/attach
operations after firmware has already moved to the new peer. Out of
sequence peer unmap and map events can mess up the reference count
for reused peer_id values, which can lead to crash.
Solution:
While detaching a peer during roam sync indication processing,
copy its peer_id_ref_cnt in peer_id_to_obj array to new variable
in the same peer map for that peer id. Peer is deleted at that point.
When the unmap events come in, decrement the old ref_cnt and
map events increment the real ref_cnt.
Once the old ref_cnt goes to 0, subsequent unmap operations apply to
the real peer.

CRs-Fixed: 1063177
Change-Id: I9b20f28f17dea1647a213b9f36060109264addf0
2016-10-07 21:18:46 -07:00
..
htt qcacld-3.0: Fix wrong use of Runtime get API inplace of Runtime put 2016-10-05 00:34:12 -07:00
ol/inc qcacld-3.0: Add option to control Rx flow steering 2016-09-11 15:23:53 -07:00
txrx qcacld-3.0: Fix peer unmap/map handling during roaming 2016-10-07 21:18:46 -07:00