diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.19.8/0755-drm-scheduler-Add-drm_sched_job_cleanup.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.19.8/0755-drm-scheduler-Add-drm_sched_job_cleanup.patch | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.19.8/0755-drm-scheduler-Add-drm_sched_job_cleanup.patch b/common/recipes-kernel/linux/linux-yocto-4.19.8/0755-drm-scheduler-Add-drm_sched_job_cleanup.patch new file mode 100644 index 00000000..6c74feda --- /dev/null +++ b/common/recipes-kernel/linux/linux-yocto-4.19.8/0755-drm-scheduler-Add-drm_sched_job_cleanup.patch @@ -0,0 +1,39 @@ +From bdb36907140e5f027010db61a3d4e63696216bc9 Mon Sep 17 00:00:00 2001 +From: Sharat Masetty <smasetty@codeaurora.org> +Date: Mon, 29 Oct 2018 15:02:28 +0530 +Subject: [PATCH 0755/2940] drm/scheduler: Add drm_sched_job_cleanup +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This patch adds a new API to clean up the scheduler job resources. This +is primarliy needed in cases the job was created but was not queued to +the scheduler queue. Additionally with this change, the layer which +creates the scheduler job also gets to free up the job's resources and +this entails moving the dma_fence_put(finished_fence) to the drivers +ops free handler routines. + +Signed-off-by: Sharat Masetty <smasetty@codeaurora.org> +Reviewed-by: Christian König <christian.koenig@amd.com> +Acked-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com> +Signed-off-by: Alex Deucher <alexander.deucher@amd.com> +Signed-off-by: kalyan Alle <kalyan.alle@amd.com> +--- + include/drm/gpu_scheduler.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/include/drm/gpu_scheduler.h b/include/drm/gpu_scheduler.h +index 63f74e95caff..872ab2ea51a1 100644 +--- a/include/drm/gpu_scheduler.h ++++ b/include/drm/gpu_scheduler.h +@@ -330,6 +330,7 @@ void drm_sched_fence_finished(struct drm_sched_fence *fence); + int drm_sched_job_init(struct drm_sched_job *job, + struct drm_sched_entity *entity, + void *owner); ++void drm_sched_job_cleanup(struct drm_sched_job *job); + void drm_sched_hw_job_reset(struct drm_gpu_scheduler *sched, + struct drm_sched_job *job); + void drm_sched_job_recovery(struct drm_gpu_scheduler *sched); +-- +2.17.1 + |