qcacmn: Fix DFS kernel panic
Problem: During DFS attach the DFS related timers are initialized only if the DFS is not offloaded. When user issues a bangradar command for full offload where DFS is offloaded to FW, HOST is trying to set a un-initialized timer and leads to a crash. Solution: Handle bangradar command in HOST only if the DFS is not offloaded. Change-Id: I8d23d450ff1941890fdc81cef1425fae8b55ce56 CRs-Fixed: 2108874
This commit is contained in:

committed by
snandini

szülő
86a83e8927
commit
bb8b274815
@@ -924,10 +924,12 @@ int dfs_control(struct wlan_dfs *dfs,
|
||||
dfs_print_nolhistory(dfs);
|
||||
break;
|
||||
case DFS_BANGRADAR:
|
||||
dfs->dfs_bangradar = 1;
|
||||
dfs->wlan_radar_tasksched = 1;
|
||||
qdf_timer_mod(&dfs->wlan_dfs_task_timer, 0);
|
||||
error = 0;
|
||||
if (!dfs->dfs_is_offload_enabled) {
|
||||
dfs->dfs_bangradar = 1;
|
||||
dfs->wlan_radar_tasksched = 1;
|
||||
qdf_timer_mod(&dfs->wlan_dfs_task_timer, 0);
|
||||
error = 0;
|
||||
}
|
||||
break;
|
||||
case DFS_SHOW_PRECAC_LISTS:
|
||||
dfs_print_precaclists(dfs);
|
||||
@@ -936,10 +938,12 @@ int dfs_control(struct wlan_dfs *dfs,
|
||||
dfs_reset_precac_lists(dfs);
|
||||
break;
|
||||
case DFS_SECOND_SEGMENT_BANGRADAR:
|
||||
dfs->dfs_second_segment_bangradar = 1;
|
||||
dfs->wlan_radar_tasksched = 1;
|
||||
qdf_timer_mod(&dfs->wlan_dfs_task_timer, 0);
|
||||
error = 0;
|
||||
if (!dfs->dfs_is_offload_enabled) {
|
||||
dfs->dfs_second_segment_bangradar = 1;
|
||||
dfs->wlan_radar_tasksched = 1;
|
||||
qdf_timer_mod(&dfs->wlan_dfs_task_timer, 0);
|
||||
error = 0;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
error = -EINVAL;
|
||||
|
Reference in New Issue
Block a user