qcacmn: Fetch thermal_stats in array range
Since lvl_idx maybe get value large than param_buf->num_temp_range_stats, then out of bounds will happen when read array of wmi_tt_stats. Change-Id: I85b29216272952102dca41792c290baf285a8e31 CRs-Fixed: 3136333
This commit is contained in:

committed by
Madan Koyyalamudi

parent
00dcb987ed
commit
3407f05fb7
@@ -12926,6 +12926,13 @@ populate_thermal_stats(WMI_THERM_THROT_STATS_EVENTID_param_tlvs *param_buf,
|
||||
WMI_THERMAL_STATS_TEMP_THRESH_LEVEL_MAX :
|
||||
tt_stats_event->therm_throt_levels;
|
||||
|
||||
if (*therm_throt_levels > param_buf->num_temp_range_stats) {
|
||||
wmi_err("therm_throt_levels:%u oob num_temp_range_stats:%u",
|
||||
*therm_throt_levels,
|
||||
param_buf->num_temp_range_stats);
|
||||
return;
|
||||
}
|
||||
|
||||
wmi_tt_stats = param_buf->temp_range_stats;
|
||||
if (!wmi_tt_stats) {
|
||||
wmi_err("wmi_tt_stats Null");
|
||||
|
Reference in New Issue
Block a user