DF-1256 / fix.diff
diff --git a/sys/dev/drm/amd/amdgpu/amdgpu_device.c b/sys/dev/drm/amd/amdgpu/amdgpu_device.c --- a/sys/dev/drm/amd/amdgpu/amdgpu_device.c +++ b/sys/dev/drm/amd/amdgpu/amdgpu_device.c @@ -759,9 +759,16 @@ if (err) return true; + if (adev->pm.fw->datasize < 280) { + release_firmware(adev->pm.fw); + adev->pm.fw = NULL; + return true; + } fw_ver = *((uint32_t *)adev->pm.fw->data + 69); if (fw_ver < 0x00160e00) return true; + release_firmware(adev->pm.fw); + adev->pm.fw = NULL; } } |