[PATCH v5 15/20] drm/sched: Check locking in drm_sched_job_await_implicit

Christian König christian.koenig at amd.com
Thu Aug 5 13:19:19 UTC 2021


Am 05.08.21 um 12:47 schrieb Daniel Vetter:
> You really need to hold the reservation here or all kinds of funny
> things can happen between grabbing the dependencies and inserting the
> new fences.
>
> Acked-by: Melissa Wen <mwen at igalia.com>
> Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
> Cc: "Christian König" <christian.koenig at amd.com>
> Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
> Cc: Luben Tuikov <luben.tuikov at amd.com>
> Cc: Andrey Grodzovsky <andrey.grodzovsky at amd.com>
> Cc: Alex Deucher <alexander.deucher at amd.com>

The function name in the subject line should be updated, apart from that 
feel free to add my rb to this patch.

Christian.

> ---
>   drivers/gpu/drm/scheduler/sched_main.c | 2 ++
>   1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/scheduler/sched_main.c b/drivers/gpu/drm/scheduler/sched_main.c
> index 49e507f91ec0..1abb40b07324 100644
> --- a/drivers/gpu/drm/scheduler/sched_main.c
> +++ b/drivers/gpu/drm/scheduler/sched_main.c
> @@ -715,6 +715,8 @@ int drm_sched_job_add_implicit_dependencies(struct drm_sched_job *job,
>   	struct dma_fence **fences;
>   	unsigned int i, fence_count;
>   
> +	dma_resv_assert_held(obj->resv);
> +
>   	if (!write) {
>   		struct dma_fence *fence = dma_resv_get_excl_unlocked(obj->resv);
>   



More information about the dri-devel mailing list