DF-1797 / fix.diff
diff --git a/sys/dev/drm/amd/powerplay/hwmgr/smu_helper.c b/sys/dev/drm/amd/powerplay/hwmgr/smu_helper.c --- a/sys/dev/drm/amd/powerplay/hwmgr/smu_helper.c +++ b/sys/dev/drm/amd/powerplay/hwmgr/smu_helper.c @@ -253,6 +253,9 @@ PP_ASSERT_WITH_CODE((NULL != vol_table), "vol_table empty.", return -EINVAL); + if (dep_table->count > PP_ATOMCTRL_MAX_VOLTAGE_ENTRIES) + return -EINVAL; + vol_table->mask_low = 0; vol_table->phase_delay = 0; vol_table->count = dep_table->count; @@ -281,6 +284,9 @@ PP_ASSERT_WITH_CODE((NULL != vol_table), "vol_table empty.", return -EINVAL); + if (dep_table->count > PP_ATOMCTRL_MAX_VOLTAGE_ENTRIES) + return -EINVAL; + vol_table->mask_low = 0; vol_table->phase_delay = 0; vol_table->count = dep_table->count; @@ -308,6 +314,9 @@ PP_ASSERT_WITH_CODE((NULL != vol_table), "vol_table empty.", return -EINVAL); + if (lookup_table->count > PP_ATOMCTRL_MAX_VOLTAGE_ENTRIES) + return -EINVAL; + vol_table->mask_low = 0; vol_table->phase_delay = 0; |