qcacmn: validate hw caps before dereferencing

Currently we are dereferencing hw caps without validation which
may cause kernel panic.

Add changes to validate hw caps before dereferencing.

Change-Id: I642dd4c0db872c4cf3bdff7e5fbccbacc82f307d
CRs-Fixed: 2049122
Este commit está contenido en:
Kapil Gupta
2017-05-15 15:57:36 +05:30
cometido por snandini
padre 1241bb8f85
commit 0692a1aa70

Ver fichero

@@ -16500,9 +16500,11 @@ static QDF_STATUS extract_service_ready_ext_tlv(wmi_unified_t wmi_handle,
else
param->num_phy = 0;
param->num_chainmask_tables = hw_caps->num_chainmask_tables;
qdf_print("Num chain mask tables: %d\n", hw_caps->num_chainmask_tables);
if (hw_caps) {
param->num_chainmask_tables = hw_caps->num_chainmask_tables;
qdf_print("Num chain mask tables: %d\n", hw_caps->num_chainmask_tables);
} else
param->num_chainmask_tables = 0;
chain_mask_combo = param_buf->mac_phy_chainmask_combo;
@@ -16511,7 +16513,7 @@ static QDF_STATUS extract_service_ready_ext_tlv(wmi_unified_t wmi_handle,
qdf_print("Dumping chain mask combo data\n");
for (i = 0; i < hw_caps->num_chainmask_tables; i++) {
for (i = 0; i < param->num_chainmask_tables; i++) {
qdf_print("table_id : %d Num valid chainmasks: %d\n",
chain_mask_combo->chainmask_table_id,