DF-1195 / fix.diff
--- /tmp/orig/dev/drm/radeon/r600.c 2026-07-23 11:54:56.864833000 +0000 +++ dev/drm/radeon/r600.c 2026-07-23 11:57:17.686283000 +0000 @@ -402,7 +402,9 @@ (rdev->pm.power_state[rdev->pm.requested_power_state_index]. clock_info[rdev->pm.requested_clock_mode_index].flags & RADEON_PM_MODE_NO_DISPLAY)) { - rdev->pm.requested_power_state_index++; + if (rdev->pm.requested_power_state_index < + rdev->pm.num_power_states - 1) + rdev->pm.requested_power_state_index++; } break; case DYNPM_ACTION_UPCLOCK: @@ -2560,6 +2562,7 @@ pr_err("r600_cp: Bogus length %zu in firmware \"%s\"\n", rdev->me_fw->datasize, fw_name); err = -EINVAL; + goto out; } ksnprintf(fw_name, sizeof(fw_name), "radeonkmsfw_%s_rlc", rlc_chip_name); @@ -2570,6 +2573,7 @@ pr_err("r600_rlc: Bogus length %zu in firmware \"%s\"\n", rdev->rlc_fw->datasize, fw_name); err = -EINVAL; + goto out; } if ((rdev->family >= CHIP_RV770) && (rdev->family <= CHIP_HEMLOCK)) { |