diff options
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/4665-drm-amdgpu-reduce-redundant-uvd-context-lost-warning.patch')
-rw-r--r-- | meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/4665-drm-amdgpu-reduce-redundant-uvd-context-lost-warning.patch | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/4665-drm-amdgpu-reduce-redundant-uvd-context-lost-warning.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/4665-drm-amdgpu-reduce-redundant-uvd-context-lost-warning.patch new file mode 100644 index 00000000..1041a49e --- /dev/null +++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/4665-drm-amdgpu-reduce-redundant-uvd-context-lost-warning.patch @@ -0,0 +1,53 @@ +From 6a190b81b435736dbf4d2b6f12452132c624717a Mon Sep 17 00:00:00 2001 +From: Le Ma <le.ma@amd.com> +Date: Wed, 27 Nov 2019 16:51:22 +0800 +Subject: [PATCH 4665/4736] drm/amdgpu: reduce redundant uvd context lost + warning message + +Move the print out of uvd instance loop in amdgpu_uvd_suspend + +v2: drop unnecessary brackets +v3: grab ras_intr state once for multiple times use + +Change-Id: Ifad997debd84763e1b55d668e144b729598f115e +Signed-off-by: Le Ma <le.ma@amd.com> +Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com> +--- + drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 11 +++++++---- + 1 file changed, 7 insertions(+), 4 deletions(-) + +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c +index 32128e982e4c..04bc063ba1c7 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c +@@ -349,6 +349,7 @@ int amdgpu_uvd_suspend(struct amdgpu_device *adev) + unsigned size; + void *ptr; + int i, j; ++ bool in_ras_intr = amdgpu_ras_intr_triggered(); + + cancel_delayed_work_sync(&adev->uvd.idle_work); + +@@ -376,13 +377,15 @@ int amdgpu_uvd_suspend(struct amdgpu_device *adev) + return -ENOMEM; + + /* re-write 0 since err_event_athub will corrupt VCPU buffer */ +- if (amdgpu_ras_intr_triggered()) { +- DRM_WARN("UVD VCPU state may lost due to RAS ERREVENT_ATHUB_INTERRUPT\n"); ++ if (in_ras_intr) + memset(adev->uvd.inst[j].saved_bo, 0, size); +- } else { ++ else + memcpy_fromio(adev->uvd.inst[j].saved_bo, ptr, size); +- } + } ++ ++ if (in_ras_intr) ++ DRM_WARN("UVD VCPU state may lost due to RAS ERREVENT_ATHUB_INTERRUPT\n"); ++ + return 0; + } + +-- +2.17.1 + |