mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-05 18:41:58 +09:00
drm/amd: check num of link levels when update pcie param
commit 406e8845356d18bdf3d3a23b347faf67706472ec upstream. In SR-IOV environment, the value of pcie_table->num_of_link_levels will be 0, and num_of_levels - 1 will cause array index out of bounds Signed-off-by: Lin.Cao <lincao12@amd.com> Acked-by: Jingwen Chen <Jingwen.Chen2@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> [ Resolve minor conflicts to fix CVE-2023-52812 ] Signed-off-by: Bin Lan <bin.lan.cn@windriver.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
52c81fd0f5
commit
2f2d48b624
@@ -2498,6 +2498,9 @@ int smu_v13_0_update_pcie_parameters(struct smu_context *smu,
|
|||||||
uint32_t smu_pcie_arg;
|
uint32_t smu_pcie_arg;
|
||||||
int ret, i;
|
int ret, i;
|
||||||
|
|
||||||
|
if (!num_of_levels)
|
||||||
|
return 0;
|
||||||
|
|
||||||
if (!amdgpu_device_pcie_dynamic_switching_supported()) {
|
if (!amdgpu_device_pcie_dynamic_switching_supported()) {
|
||||||
if (pcie_table->pcie_gen[num_of_levels - 1] < pcie_gen_cap)
|
if (pcie_table->pcie_gen[num_of_levels - 1] < pcie_gen_cap)
|
||||||
pcie_gen_cap = pcie_table->pcie_gen[num_of_levels - 1];
|
pcie_gen_cap = pcie_table->pcie_gen[num_of_levels - 1];
|
||||||
|
|||||||
Reference in New Issue
Block a user