qcacld-3.0: Clear pending flag in hdd_destroy_acs_timer()

hdd_create_acs_timer() sets VENDOR_ACS_RESPONSE_PENDING, but
hdd_destroy_acs_timer() does not ensure this flag is cleared. This can
lead to a situation where the ACS timer is not initialized, but parts of
the code incorrectly assume that it is. Clear
VENDOR_ACS_RESPONSE_PENDING in hdd_destroy_acs_timer() to prevent
invalid access to the ACS timer.

Change-Id: I7c367b20e279fadc5ee329d94b7475711796b185
CRs-Fixed: 2305719
This commit is contained in:
Dustin Brown 2018-08-30 11:34:39 -07:00 committed by nshrivas
parent 5a75b9d348
commit 1faac91278

View File

@ -5186,6 +5186,7 @@ int hdd_destroy_acs_timer(struct hdd_adapter *adapter)
adapter->session.ap.vendor_acs_timer_initialized = false;
clear_bit(VENDOR_ACS_RESPONSE_PENDING, &adapter->event_flags);
if (QDF_TIMER_STATE_RUNNING ==
adapter->session.ap.vendor_acs_timer.state) {
qdf_status =