|
@@ -1945,6 +1945,13 @@ int wma_vdev_stop_resp_handler(void *handle, uint8_t *cmd_param_info,
|
|
|
}
|
|
|
|
|
|
resp_event = param_buf->fixed_param;
|
|
|
+
|
|
|
+ if (resp_event->vdev_id >= wma->max_bssid) {
|
|
|
+ WMA_LOGE("%s: Invalid vdev_id %d from FW",
|
|
|
+ __func__, resp_event->vdev_id);
|
|
|
+ return -EINVAL;
|
|
|
+ }
|
|
|
+
|
|
|
iface = &wma->interfaces[resp_event->vdev_id];
|
|
|
wma_release_wakelock(&iface->vdev_stop_wakelock);
|
|
|
|
|
@@ -1956,8 +1963,7 @@ int wma_vdev_stop_resp_handler(void *handle, uint8_t *cmd_param_info,
|
|
|
return -EINVAL;
|
|
|
}
|
|
|
|
|
|
- if ((resp_event->vdev_id < wma->max_bssid) &&
|
|
|
- (qdf_atomic_read
|
|
|
+ if ((qdf_atomic_read
|
|
|
(&wma->interfaces[resp_event->vdev_id].vdev_restart_params.
|
|
|
hidden_ssid_restart_in_progress))
|
|
|
&& ((wma->interfaces[resp_event->vdev_id].type == WMI_VDEV_TYPE_AP)
|
|
@@ -1996,11 +2002,6 @@ int wma_vdev_stop_resp_handler(void *handle, uint8_t *cmd_param_info,
|
|
|
tpDeleteBssParams params =
|
|
|
(tpDeleteBssParams) req_msg->user_data;
|
|
|
|
|
|
- if (resp_event->vdev_id >= wma->max_bssid) {
|
|
|
- WMA_LOGE("%s: Invalid vdev_id %d", __func__,
|
|
|
- resp_event->vdev_id);
|
|
|
- }
|
|
|
-
|
|
|
if (iface->handle == NULL) {
|
|
|
WMA_LOGE("%s vdev id %d is already deleted",
|
|
|
__func__, resp_event->vdev_id);
|