qcacmn: Fix to release vdev reference on cmd dequeue
Add change to release vdev reference only on successful removal of active cmd from serialization active queue. Change-Id: I2e14f7f53dc38388cdd05f029edc9329f9dd86a7 CRs-Fixed: 2463724
This commit is contained in:

committad av
nshrivas

förälder
fb0877f2d6
incheckning
f7b253f5e2
@@ -562,6 +562,7 @@ void wlan_serialization_generic_timer_cb(void *arg)
|
||||
struct wlan_serialization_timer *timer = arg;
|
||||
struct wlan_serialization_command *cmd = timer->cmd;
|
||||
struct wlan_objmgr_vdev *vdev = NULL;
|
||||
enum wlan_serialization_cmd_status status;
|
||||
|
||||
|
||||
if (!cmd) {
|
||||
@@ -585,10 +586,11 @@ void wlan_serialization_generic_timer_cb(void *arg)
|
||||
* dequeue cmd API will cleanup and destroy the timer. If it fails to
|
||||
* dequeue command then we have to destroy the timer.
|
||||
*/
|
||||
wlan_serialization_dequeue_cmd(cmd, SER_TIMEOUT, true);
|
||||
status = wlan_serialization_dequeue_cmd(cmd, SER_TIMEOUT, true);
|
||||
|
||||
/* Release the ref taken before the timer was started */
|
||||
wlan_objmgr_vdev_release_ref(vdev, WLAN_SERIALIZATION_ID);
|
||||
if (status == WLAN_SER_CMD_IN_ACTIVE_LIST)
|
||||
wlan_objmgr_vdev_release_ref(vdev, WLAN_SERIALIZATION_ID);
|
||||
}
|
||||
|
||||
static QDF_STATUS wlan_serialization_mc_flush_noop(struct scheduler_msg *msg)
|
||||
|
Referens i nytt ärende
Block a user