mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-14 08:36:12 -04:00
qcacld-3.0: Fix peer ref-count while deleting peer as part of LFR3
There are two instances where peer ref counting leak has been observed 1) When DUT-STA is connected to AP1 and if it tries to roam to AP2 or to same AP1 then as part of roam sync indication, it needs to delete the old peer and create the new peer. Deletion of old peer is happening through force delete operation which is No-OP for some of the platforms. In such cases, do normal peer delete operation, so that peer ref count can be deleted properly. CRs-Fixed: 2270761 Change-Id: Ibcad72943258e531e29498961d3d7e692fd05b36
This commit is contained in:
parent
772fbaf169
commit
d90ed4ea85
1 changed files with 10 additions and 2 deletions
|
|
@ -1525,10 +1525,18 @@ peer_detach:
|
|||
wma->interfaces[vdev_id].peer_count);
|
||||
/* Copy peer mac to find and delete objmgr peer */
|
||||
qdf_mem_copy(peer_mac, peer_mac_addr, QDF_MAC_ADDR_SIZE);
|
||||
if (roam_synch_in_progress)
|
||||
if (roam_synch_in_progress &&
|
||||
is_cdp_peer_detach_force_delete_supported(soc)) {
|
||||
WMA_LOGD("%s: LFR3: trigger force delete for peer %pM",
|
||||
__func__, peer_mac_addr);
|
||||
cdp_peer_detach_force_delete(soc, peer);
|
||||
else
|
||||
} else {
|
||||
if (roam_synch_in_progress) {
|
||||
WMA_LOGD("%s: LFR3: normal peer delete for peer %pM",
|
||||
__func__, peer_mac_addr);
|
||||
}
|
||||
cdp_peer_delete(soc, peer, bitmap);
|
||||
}
|
||||
|
||||
wma_remove_objmgr_peer(wma, vdev_id, peer_mac);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue