qcacmn: Do not stop at first object in get vdev by op_mode

In API wlan_objmgr_get_vdev_by_opmode_from_psoc, do not stop at first
vdev object if the vdev is in logical delete state. Continue till all
vdev are iterated or valid vdev is found.

Change-Id: I39d10d84ec9cb219d9b2f528e3415d5a4520bae5
CRs-Fixed: 2140337
This commit is contained in:
Naveen Rawat 2017-11-08 11:03:28 -08:00 • committed by snandini
commit bbb6bd6585

View file

@ -876,7 +876,7 @@ struct wlan_objmgr_vdev *wlan_objmgr_get_vdev_by_opmode_from_psoc(
enum QDF_OPMODE opmode,
wlan_objmgr_ref_dbgid dbg_id)
{
struct wlan_objmgr_vdev *vdev;
struct wlan_objmgr_vdev *vdev = NULL;
int vdev_cnt = 0;
/* if PSOC is NULL, return */
@ -895,8 +895,10 @@ struct wlan_objmgr_vdev *wlan_objmgr_get_vdev_by_opmode_from_psoc(
if (vdev->vdev_mlme.vdev_opmode == opmode) {
wlan_vdev_obj_unlock(vdev);
if (wlan_objmgr_vdev_try_get_ref(vdev, dbg_id) !=
QDF_STATUS_SUCCESS)
QDF_STATUS_SUCCESS) {
vdev = NULL;
continue;
}
break;
}
wlan_vdev_obj_unlock(vdev);