Abhijit Pradhan 0c80b53ac7 qcacmn: Fix DFS nol memory leak
Problem:- If the driver is unloaded before a nol timer fires, the unload
function frees the NOl element. But the memory associated with the nol timer
argument which has a one-to-one mapping with nol still remains in the system
since the nol timer argument memory is freed in the timer function.

Solution:-
1)Instead of allocating a separate structure as input to the timer function
use the NOL element itself as input since NOL element already has the
information needed by the timer function.
2)A NOL element for which  the timer is yet to fire is freed
by the driver unload (dfs_nol_timer_cleanup).
3)When dfs_nol_timer_cleanup is about to free a NOL element the corresponding
timer may be already running. Therefore, it is required to sync/wait for the
timer to finish before the NOL element can be freed. If we do not wait and
free the NOL element the timer may access an invalid memory location.

Change-Id: I4f37b66777491d92a51ff1ffc2651af1ccf5de29
CRs-Fixed: 2045993
2017-05-16 07:26:50 -07:00
2017-05-10 02:12:04 -07:00
2017-05-16 07:26:50 -07:00
2017-03-27 08:31:31 -07:00

This is CNSS WLAN Host Driver for products starting from iHelium
Description
No description provided
Readme 184 MiB
Languages
C 98.7%
C++ 0.9%
Makefile 0.3%
Starlark 0.1%