aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2767-drm-amdkfd-Init-mqd-managers-in-device-queue-manager.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2767-drm-amdkfd-Init-mqd-managers-in-device-queue-manager.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2767-drm-amdkfd-Init-mqd-managers-in-device-queue-manager.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2767-drm-amdkfd-Init-mqd-managers-in-device-queue-manager.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2767-drm-amdkfd-Init-mqd-managers-in-device-queue-manager.patch
new file mode 100644
index 00000000..3a134849
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/2767-drm-amdkfd-Init-mqd-managers-in-device-queue-manager.patch
@@ -0,0 +1,37 @@
+From 02b4ea3fa70aced57b7fe0831503be06cfdf9746 Mon Sep 17 00:00:00 2001
+From: Oak Zeng <ozeng@amd.com>
+Date: Wed, 5 Dec 2018 10:15:27 -0600
+Subject: [PATCH 2767/2940] drm/amdkfd: Init mqd managers in device queue
+ manager init
+
+Previously mqd managers was initialized on demand. As there
+are only a few type of mqd managers, the on demand initialization
+doesn't save too much memory. Initialize them on device
+queue initialization instead and delete the get_mqd_manager
+interface. This makes codes more organized for future changes.
+
+Change-Id: I788d14389ecb200f005e94757aeabecdbf6dbabd
+Signed-off-by: Oak Zeng <ozeng@amd.com>
+Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
+Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
+---
+ drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
+index 602284ffd976..43cba6f4a0f3 100644
+--- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
++++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
+@@ -1214,9 +1214,6 @@ static int create_queue_cpsch(struct device_queue_manager *dqm, struct queue *q,
+ if (retval)
+ goto out_deallocate_sdma_queue;
+
+- /* Do init_mqd before dqm_lock(dqm) to avoid circular locking order:
+- * lock(dqm) -> bo::Reserves
+- */
+ mqd_mgr = dqm->mqd_mgrs[get_mqd_type_from_queue_type(
+ q->properties.type)];
+ /*
+--
+2.17.1
+