⬢ DragonFlyBSD Kernel Audit
DF-3649 / fix.diff
← back to finding ↓ download raw
--- a/sys/dev/drm/radeon/ci_dpm.c
+++ b/sys/dev/drm/radeon/ci_dpm.c
@@ -2371,7 +2371,9 @@ static int ci_get_std_voltage_value_sidd(struct radeon_device *rdev,
 	if (rdev->pm.dpm.dyn_state.vddc_dependency_on_sclk.entries == NULL)
 		return -EINVAL;
 
-	if (rdev->pm.dpm.dyn_state.cac_leakage_table.entries) {
+	if (rdev->pm.dpm.dyn_state.cac_leakage_table.entries &&
+	    rdev->pm.dpm.dyn_state.cac_leakage_table.count > 0) {
 		for (v_index = 0; (u32)v_index < rdev->pm.dpm.dyn_state.vddc_dependency_on_sclk.count; v_index++) {
 			if (voltage_table->value ==
 			    rdev->pm.dpm.dyn_state.vddc_dependency_on_sclk.entries[v_index].v) {