qcacld-3.0: Enable SAE auth cache api for Diag logging

SAE authentication frames during roaming should be cached and
printed after roam scan done print. This support is not present
in diag logging.
Enable SAE auth frame caching for diag logging.

Change-Id: I205bd2fd1c91253d1e6aaf3361857baf67ccd6fd
CRs-Fixed: 3254216
Цей коміт міститься в:
Pragaspathi Thilagaraj
2022-07-28 19:40:04 +05:30
зафіксовано Madan Koyyalamudi
джерело 1e3a6f347e
коміт 74d3b5dbcb
10 змінених файлів з 315 додано та 67 видалено

Переглянути файл

@@ -5384,10 +5384,12 @@ static void cm_roam_start_init(struct wlan_objmgr_psoc *psoc,
*/
cm_store_sae_single_pmk_to_global_cache(psoc, pdev, vdev);
if (!MLME_IS_ROAM_SYNCH_IN_PROGRESS(psoc, vdev_id))
if (!MLME_IS_ROAM_SYNCH_IN_PROGRESS(psoc, vdev_id)) {
wlan_clear_sae_auth_logs_cache(psoc, vdev_id);
wlan_cm_roam_state_change(pdev, vdev_id,
WLAN_ROAM_RSO_ENABLED,
REASON_CTX_INIT);
}
}
void cm_roam_start_init_on_connect(struct wlan_objmgr_pdev *pdev,

Переглянути файл

@@ -3166,7 +3166,8 @@ cm_get_frame_subtype_str(enum mgmt_subtype frame_subtype)
#define WLAN_SAE_AUTH_ALGO 3
static void
cm_roam_print_frame_info(struct roam_frame_stats *frame_data,
cm_roam_print_frame_info(struct wlan_objmgr_psoc *psoc,
struct roam_frame_stats *frame_data,
struct wmi_roam_scan_data *scan_data, uint8_t vdev_id)
{
struct roam_frame_info *frame_info;
@@ -3179,9 +3180,11 @@ cm_roam_print_frame_info(struct roam_frame_stats *frame_data,
for (i = 0; i < frame_data->num_frame; i++) {
frame_info = &frame_data->frame_info[i];
if (frame_info->auth_algo == WLAN_SAE_AUTH_ALGO &&
wlan_is_log_record_present_for_bssid(&frame_info->bssid,
wlan_is_log_record_present_for_bssid(psoc,
&frame_info->bssid,
vdev_id)) {
wlan_print_cached_sae_auth_logs(&frame_info->bssid,
wlan_print_cached_sae_auth_logs(psoc,
&frame_info->bssid,
vdev_id);
continue;
}
@@ -3326,7 +3329,7 @@ cm_roam_handle_btm_stats(struct wlan_objmgr_psoc *psoc,
stats_info->vdev_id);
if (stats_info->frame_stats[i].num_frame)
cm_roam_print_frame_info(&stats_info->frame_stats[i],
cm_roam_print_frame_info(psoc, &stats_info->frame_stats[i],
&stats_info->scan[i],
stats_info->vdev_id);
@@ -3410,7 +3413,8 @@ cm_roam_stats_event_handler(struct wlan_objmgr_psoc *psoc,
stats_info->vdev_id);
if (stats_info->frame_stats[i].num_frame)
cm_roam_print_frame_info(&stats_info->frame_stats[i],
cm_roam_print_frame_info(psoc,
&stats_info->frame_stats[i],
&stats_info->scan[i],
stats_info->vdev_id);
@@ -3509,7 +3513,7 @@ cm_roam_stats_event_handler(struct wlan_objmgr_psoc *psoc,
}
}
wlan_clear_sae_auth_logs_cache(stats_info->vdev_id);
wlan_clear_sae_auth_logs_cache(psoc, stats_info->vdev_id);
qdf_mem_free(stats_info->roam_msg_info);
qdf_mem_free(stats_info);