summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXihan Zhang <xihan.zhang@amd.com>2015-04-28 23:48:40 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2015-05-17 09:55:09 -0700
commitac7e07c8a83db4e9744ea976d405981256b1fddf (patch)
tree391cf01a8dce517eb1ee12ebab2772caf58cb14c
parent5d7e0bf007b984124274cd07e99530502543b822 (diff)
drm/amdkfd: Initialize sdma vm when creating sdma queue
commit 79b066bd76d501cfe8328142153da301f5ca11d1 upstream. This patch fixes a bug where sdma vm wasn't initialized when an sdma queue was created in HWS mode. This caused GPUVM faults to appear on dmesg and it is one of the causes that SDMA queues are not working. Signed-off-by: Xihan Zhang <xihan.zhang@amd.com> Reviewed-by: Ben Goz <ben.goz@amd.comt> Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c2
1 files changed, 2 insertions, 0 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 0ebca862683c..39762a7d2ec7 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
@@ -879,6 +879,8 @@ static int create_queue_cpsch(struct device_queue_manager *dqm, struct queue *q,
return -ENOMEM;
}
+ init_sdma_vm(dqm, q, qpd);
+
retval = mqd->init_mqd(mqd, &q->mqd, &q->mqd_mem_obj,
&q->gart_mqd_addr, &q->properties);
if (retval != 0)