Commit 94d68b99 authored by Alex Deucher's avatar Alex Deucher Committed by Kaixiong Yu
Browse files

drm/radeon: fix UBSAN warning in kv_dpm.c

stable inclusion
from stable-v4.19.317
commit 07e8f15fa16695cf4c90e89854e59af4a760055b
category: bugfix
bugzilla: https://gitee.com/src-openeuler/kernel/issues/IACR1V
CVE: CVE-2024-40988

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=07e8f15fa16695cf4c90e89854e59af4a760055b



--------------------------------

commit a498df5421fd737d11bfd152428ba6b1c8538321 upstream.

Adds bounds check for sumo_vid_mapping_entry.

Reviewed-by: default avatarMario Limonciello <mario.limonciello@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: default avatarKaixiong Yu <yukaixiong@huawei.com>
parent 0e54270d
Loading
Loading
Loading
Loading
+2 −0
Original line number Original line Diff line number Diff line
@@ -1620,6 +1620,8 @@ void sumo_construct_vid_mapping_table(struct radeon_device *rdev,


	for (i = 0; i < SUMO_MAX_HARDWARE_POWERLEVELS; i++) {
	for (i = 0; i < SUMO_MAX_HARDWARE_POWERLEVELS; i++) {
		if (table[i].ulSupportedSCLK != 0) {
		if (table[i].ulSupportedSCLK != 0) {
			if (table[i].usVoltageIndex >= SUMO_MAX_NUMBER_VOLTAGES)
				continue;
			vid_mapping_table->entries[table[i].usVoltageIndex].vid_7bit =
			vid_mapping_table->entries[table[i].usVoltageIndex].vid_7bit =
				table[i].usVoltageID;
				table[i].usVoltageID;
			vid_mapping_table->entries[table[i].usVoltageIndex].vid_2bit =
			vid_mapping_table->entries[table[i].usVoltageIndex].vid_2bit =