Commit 8c79bae6 authored by Alex Deucher's avatar Alex Deucher Committed by Christian König

drm/radeon/si: make sure mc ucode is loaded before checking the size

Avoid a possible segfault.
Noticed-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
parent f8a2645e
...@@ -1472,11 +1472,13 @@ int si_mc_load_microcode(struct radeon_device *rdev) ...@@ -1472,11 +1472,13 @@ int si_mc_load_microcode(struct radeon_device *rdev)
const __be32 *fw_data; const __be32 *fw_data;
u32 running, blackout = 0; u32 running, blackout = 0;
u32 *io_mc_regs; u32 *io_mc_regs;
int i, regs_size, ucode_size = rdev->mc_fw->size / 4; int i, regs_size, ucode_size;
if (!rdev->mc_fw) if (!rdev->mc_fw)
return -EINVAL; return -EINVAL;
ucode_size = rdev->mc_fw->size / 4;
switch (rdev->family) { switch (rdev->family) {
case CHIP_TAHITI: case CHIP_TAHITI:
io_mc_regs = (u32 *)&tahiti_io_mc_regs; io_mc_regs = (u32 *)&tahiti_io_mc_regs;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment