qcacld-3.0: Fix TDLS timer leak when unloading

If firmware is stuck while driver unloading, sme_close_session
will return failure, and cause later timer leak, in this case
continue to release vdev.

Change-Id: I137d8d29ec18af1b222eb0b967916fa20b998894
CRs-Fixed: 2176949
This commit is contained in:
Frank Liu 2018-01-26 16:18:18 +08:00 • committed by snandini
commit c66d4bf13c

View file

@ -3628,10 +3628,11 @@ int hdd_vdev_destroy(struct hdd_adapter *adapter)
}
release_vdev:
/* In SSR case, directly exit may cause objects leaks,
* if sme_close_session failed.Free objects anyway.
/*
* In SSR or driver unloading case, directly exit may cause objects
* leak, if sme_close_session failed. Free objects anyway.
*/
if (errno && !cds_is_driver_recovering())
if (errno && !(cds_is_driver_recovering() || cds_is_driver_unloading()))
return errno;
/* do vdev logical destroy via objmgr */