diff options
Diffstat (limited to 'common/recipes-kernel/linux/files/0410-drm-amdgpu-re-implement-fence_default_wait.patch')
-rw-r--r-- | common/recipes-kernel/linux/files/0410-drm-amdgpu-re-implement-fence_default_wait.patch | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/common/recipes-kernel/linux/files/0410-drm-amdgpu-re-implement-fence_default_wait.patch b/common/recipes-kernel/linux/files/0410-drm-amdgpu-re-implement-fence_default_wait.patch deleted file mode 100644 index 8620c8e5..00000000 --- a/common/recipes-kernel/linux/files/0410-drm-amdgpu-re-implement-fence_default_wait.patch +++ /dev/null @@ -1,71 +0,0 @@ -From e29551556e055f463fb80cfb07e1cb15641e60a3 Mon Sep 17 00:00:00 2001 -From: "monk.liu" <monk.liu@amd.com> -Date: Thu, 30 Jul 2015 18:26:18 +0800 -Subject: [PATCH 0410/1050] drm/amdgpu: re-implement fence_default_wait -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -use fence_wait_any to implement fence_default_wait - -Signed-off-by: monk.liu <monk.liu@amd.com> -Reviewed-by: Christian König <christian.koenig@amd.com> ---- - drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 37 ++++--------------------------- - 1 file changed, 4 insertions(+), 33 deletions(-) - -diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c -index a4982f5..0f9800b 100644 ---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c -+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c -@@ -1116,43 +1116,14 @@ static void amdgpu_fence_wait_cb(struct fence *fence, struct fence_cb *cb) - static signed long amdgpu_fence_default_wait(struct fence *f, bool intr, - signed long t) - { -+ struct amdgpu_fence *array[AMDGPU_MAX_RINGS]; - struct amdgpu_fence *fence = to_amdgpu_fence(f); - struct amdgpu_device *adev = fence->ring->adev; -- struct amdgpu_wait_cb cb; - -- cb.task = current; -+ memset(&array[0], 0, sizeof(array)); -+ array[0] = fence; - -- if (fence_add_callback(f, &cb.base, amdgpu_fence_wait_cb)) -- return t; -- -- while (t > 0) { -- if (intr) -- set_current_state(TASK_INTERRUPTIBLE); -- else -- set_current_state(TASK_UNINTERRUPTIBLE); -- -- /* -- * amdgpu_test_signaled must be called after -- * set_current_state to prevent a race with wake_up_process -- */ -- if (amdgpu_test_signaled(fence)) -- break; -- -- if (adev->needs_reset) { -- t = -EDEADLK; -- break; -- } -- -- t = schedule_timeout(t); -- -- if (t > 0 && intr && signal_pending(current)) -- t = -ERESTARTSYS; -- } -- -- __set_current_state(TASK_RUNNING); -- fence_remove_callback(f, &cb.base); -- -- return t; -+ return amdgpu_fence_wait_any(adev, array, intr, t); - } - - /* wait until any fence in array signaled */ --- -1.9.1 - |