ソースを参照

qcacld-3.0: Print SSID info when beacon report request is received

Currently the ssid received in the beacon report request is not
printed when beacon report is received from AP in the kmsg.

Fix to print the SSID if its present in the beacon report
request.

Change-Id: Ide4659e955dec756f60b0508eb3be529c43601b3
CRs-Fixed: 2632653
Pragaspathi Thilagaraj 5 年 前
コミット
2459400ed5
2 ファイル変更12 行追加12 行削除
  1. 5 7
      core/mac/src/pe/rrm/rrm_api.c
  2. 7 5
      core/wma/src/wma_scan_roam.c

+ 5 - 7
core/mac/src/pe/rrm/rrm_api.c

@@ -536,7 +536,6 @@ rrm_process_beacon_report_req(struct mac_context *mac,
 	tDot11fIEAPChannelReport *ie_ap_chan_rpt;
 	uint8_t tmp_idx, buf_left, buf_cons;
 	uint16_t ch_ctr = 0;
-	char req_ssid[WLAN_SSID_MAX_LEN] = {0};
 	char ch_buf[RRM_CH_BUF_LEN];
 	char *tmp_buf = NULL;
 	uint8_t country[WNI_CFG_COUNTRY_CODE_LEN];
@@ -580,12 +579,11 @@ rrm_process_beacon_report_req(struct mac_context *mac,
 
 	measDuration = pBeaconReq->measurement_request.Beacon.meas_duration;
 
-	if (pBeaconReq->measurement_request.Beacon.SSID.present)
-		qdf_snprintf(req_ssid, WLAN_SSID_MAX_LEN, "%s",
-			     pBeaconReq->measurement_request.Beacon.SSID.ssid);
-
-	pe_nofl_info("RX: [802.11 BCN_RPT] SSID:%s BSSID:%pM Token:%d op_class:%d ch:%d meas_mode:%d meas_duration:%d max_dur: %d sign: %d max_meas_dur: %d",
-		     req_ssid, pBeaconReq->measurement_request.Beacon.BSSID,
+	pe_nofl_info("RX: [802.11 BCN_RPT] seq:%d SSID:%.*s BSSID:%pM Token:%d op_class:%d ch:%d meas_mode:%d meas_duration:%d max_dur: %d sign: %d max_meas_dur: %d",
+		     mac->rrm.rrmPEContext.prev_rrm_report_seq_num,
+		     pBeaconReq->measurement_request.Beacon.SSID.num_ssid,
+		     pBeaconReq->measurement_request.Beacon.SSID.ssid,
+		     pBeaconReq->measurement_request.Beacon.BSSID,
 		     pBeaconReq->measurement_token,
 		     pBeaconReq->measurement_request.Beacon.regClass,
 		     pBeaconReq->measurement_request.Beacon.channel,

+ 7 - 5
core/wma/src/wma_scan_roam.c

@@ -3641,15 +3641,17 @@ wma_rso_print_11kv_info(struct wmi_neighbor_report_data *neigh_rpt,
 		return;
 
 	tmp = buf;
-	for (i = 0; i < num_ch; i++) {
+	if (num_ch) {
 		buf_cons = qdf_snprint(tmp, buf_left, "{ ");
 		buf_left -= buf_cons;
 		tmp += buf_cons;
 
-		buf_cons = qdf_snprint(tmp, buf_left, "%d ",
-				       neigh_rpt->freq[i]);
-		buf_left -= buf_cons;
-		tmp += buf_cons;
+		for (i = 0; i < num_ch; i++) {
+			buf_cons = qdf_snprint(tmp, buf_left, "%d ",
+					       neigh_rpt->freq[i]);
+			buf_left -= buf_cons;
+			tmp += buf_cons;
+		}
 
 		buf_cons = qdf_snprint(tmp, buf_left, "}");
 		buf_left -= buf_cons;