qcacld-3.0: Pass psoc instead of vdev for teardown links

As part of start_ap or connect_start to teardown active tdls peers
hdd_notify_teardown_tdls_links is called with argument vdev. But
TDLS might not be enabled on that vdev. With recent changes,
osif_priv object is initialized as part of tdls_vdev_init.
For the new interface if TDLS is not initialized then osif_priv
object will not be found and TDLS peers are not removed.

Change-Id: Idcf690bba2766664700a4851d390ee620f2fe73a
CRs-Fixed: 2460108
Tento commit je obsažen v:
Bala Venkatesh
2019-05-27 14:16:40 +05:30
odevzdal nshrivas
rodič 8280a15953
revize 9bb9c05e83
9 změnil soubory, kde provedl 69 přidání a 45 odebrání

Zobrazit soubor

@@ -1084,6 +1084,7 @@ QDF_STATUS nan_discovery_pre_enable(struct wlan_objmgr_psoc *psoc,
goto pre_enable_failure;
}
vdev_id = wlan_vdev_get_id(vdev);
wlan_objmgr_vdev_release_ref(vdev, WLAN_NAN_ID);
status = policy_mgr_update_and_wait_for_connection_update(psoc, vdev_id,
nan_social_channel,
@@ -1094,13 +1095,11 @@ QDF_STATUS nan_discovery_pre_enable(struct wlan_objmgr_psoc *psoc,
}
/* Try to teardown TDLS links, but do not wait */
status = ucfg_tdls_teardown_links(vdev);
status = ucfg_tdls_teardown_links(psoc);
if (QDF_IS_STATUS_ERROR(status))
nan_err("Failed to teardown TDLS links");
pre_enable_failure:
if (vdev)
wlan_objmgr_vdev_release_ref(vdev, WLAN_NAN_ID);
if (pdev)
wlan_objmgr_pdev_release_ref(pdev, WLAN_NAN_ID);