aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2871-drm-amdkfd-kmap-PD-bo-after-PD-is-restored.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2871-drm-amdkfd-kmap-PD-bo-after-PD-is-restored.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2871-drm-amdkfd-kmap-PD-bo-after-PD-is-restored.patch36
1 files changed, 36 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2871-drm-amdkfd-kmap-PD-bo-after-PD-is-restored.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2871-drm-amdkfd-kmap-PD-bo-after-PD-is-restored.patch
new file mode 100644
index 00000000..ca90d512
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2871-drm-amdkfd-kmap-PD-bo-after-PD-is-restored.patch
@@ -0,0 +1,36 @@
+From 43549598ed8eaaafbce4835813018bcc8db16223 Mon Sep 17 00:00:00 2001
+From: Philip Yang <Philip.Yang@amd.com>
+Date: Wed, 29 Nov 2017 17:00:13 -0500
+Subject: [PATCH 2871/4131] drm/amdkfd: kmap PD bo after PD is restored
+
+PD kmap is removed after PD bo is evicted, kmap PD after PD BO
+is restored because update directory using cpu to access PD for
+large bar. If PD BO kmap still exist, this will do nothing.
+
+Change-Id: If55dd8d8c57acd6f7f328aef65a64384ced834c3
+Signed-off-by: Philip Yang <Philip.Yang@amd.com>
+---
+ drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
+index 869487b5..3082f67 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
+@@ -403,6 +403,13 @@ static int vm_validate_pt_pd_bos(struct amdgpu_vm *vm)
+ pr_err("amdgpu: failed to validate PD\n");
+ return ret;
+ }
++ if (vm->use_cpu_for_update) {
++ ret = amdgpu_bo_kmap(pd, NULL);
++ if (ret) {
++ pr_err("amdgpu: failed to kmap PD, ret=%d\n", ret);
++ return ret;
++ }
++ }
+
+ ret = amdgpu_vm_update_directories(adev, vm);
+ if (ret != 0)
+--
+2.7.4
+