drm/scheduler: Add fence deadline support
authorRob Clark <robdclark@gmail.com>
Tue, 21 Sep 2021 16:35:50 +0000 (09:35 -0700)
committerRob Clark <robdclark@chromium.org>
Tue, 28 Mar 2023 21:45:02 +0000 (14:45 -0700)
commitf3823da7e4ba7d4781375c2bb786a8a78efc6591
treecfa1dd3b17612c4436c485d3a967ef8f295aef93
parentd71c11cc79d259c059f4ad377c0f930263f77c53
drm/scheduler: Add fence deadline support

As the finished fence is the one that is exposed to userspace, and
therefore the one that other operations, like atomic update, would
block on, we need to propagate the deadline from from the finished
fence to the actual hw fence.

v2: Split into drm_sched_fence_set_parent() (ckoenig)
v3: Ensure a thread calling drm_sched_fence_set_deadline_finished() sees
    fence->parent set before drm_sched_fence_set_parent() does this
    test_bit(DMA_FENCE_FLAG_HAS_DEADLINE_BIT).

Signed-off-by: Rob Clark <robdclark@chromium.org>
Acked-by: Luben Tuikov <luben.tuikov@amd.com>
drivers/gpu/drm/scheduler/sched_fence.c
drivers/gpu/drm/scheduler/sched_main.c
include/drm/gpu_scheduler.h