diff options
author | Daniel Vetter | 2018-05-03 12:31:38 +0200 |
---|---|---|
committer | Daniel Vetter | 2018-05-03 12:38:39 +0200 |
commit | 51f170a544bdb06d93316d8ff0814a52daa24a6c (patch) | |
tree | 658467e218931c8661b37373346ca76029fa4fc5 /drivers/gpu/drm | |
parent | drm/qxl: Remove unecessary dma_fence_ops (diff) | |
download | kernel-qcow2-linux-51f170a544bdb06d93316d8ff0814a52daa24a6c.tar.gz kernel-qcow2-linux-51f170a544bdb06d93316d8ff0814a52daa24a6c.tar.xz kernel-qcow2-linux-51f170a544bdb06d93316d8ff0814a52daa24a6c.zip |
Revert 190c462d5be19ba622a82f5fd0625087c870a1e6..bf3012ada1b2222e770de5c35c1bb16f73b3a01d"
I shouldn't have pushed this, CI was right - I failed to remove the
BUG_ON(!ops->wait);
Reported-by: Chris Wilson <chris@chris-wilson.co.uk>
Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r-- | drivers/gpu/drm/drm_crtc.c | 7 | ||||
-rw-r--r-- | drivers/gpu/drm/drm_syncobj.c | 1 | ||||
-rw-r--r-- | drivers/gpu/drm/qxl/qxl_release.c | 7 | ||||
-rw-r--r-- | drivers/gpu/drm/scheduler/sched_fence.c | 11 |
4 files changed, 26 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c index e4d3285f4191..a231dd5dce16 100644 --- a/drivers/gpu/drm/drm_crtc.c +++ b/drivers/gpu/drm/drm_crtc.c @@ -225,9 +225,16 @@ static const char *drm_crtc_fence_get_timeline_name(struct dma_fence *fence) return crtc->timeline_name; } +static bool drm_crtc_fence_enable_signaling(struct dma_fence *fence) +{ + return true; +} + static const struct dma_fence_ops drm_crtc_fence_ops = { .get_driver_name = drm_crtc_fence_get_driver_name, .get_timeline_name = drm_crtc_fence_get_timeline_name, + .enable_signaling = drm_crtc_fence_enable_signaling, + .wait = dma_fence_default_wait, }; struct dma_fence *drm_crtc_create_fence(struct drm_crtc *crtc) diff --git a/drivers/gpu/drm/drm_syncobj.c b/drivers/gpu/drm/drm_syncobj.c index adb3cb27d31e..d4f4ce484529 100644 --- a/drivers/gpu/drm/drm_syncobj.c +++ b/drivers/gpu/drm/drm_syncobj.c @@ -207,6 +207,7 @@ static const struct dma_fence_ops drm_syncobj_null_fence_ops = { .get_driver_name = drm_syncobj_null_fence_get_name, .get_timeline_name = drm_syncobj_null_fence_get_name, .enable_signaling = drm_syncobj_null_fence_enable_signaling, + .wait = dma_fence_default_wait, .release = NULL, }; diff --git a/drivers/gpu/drm/qxl/qxl_release.c b/drivers/gpu/drm/qxl/qxl_release.c index 04f3605ac42a..5d84a66fed36 100644 --- a/drivers/gpu/drm/qxl/qxl_release.c +++ b/drivers/gpu/drm/qxl/qxl_release.c @@ -50,6 +50,12 @@ static const char *qxl_get_timeline_name(struct dma_fence *fence) return "release"; } +static bool qxl_nop_signaling(struct dma_fence *fence) +{ + /* fences are always automatically signaled, so just pretend we did this.. */ + return true; +} + static long qxl_fence_wait(struct dma_fence *fence, bool intr, signed long timeout) { @@ -113,6 +119,7 @@ signaled: static const struct dma_fence_ops qxl_fence_ops = { .get_driver_name = qxl_get_driver_name, .get_timeline_name = qxl_get_timeline_name, + .enable_signaling = qxl_nop_signaling, .wait = qxl_fence_wait, }; diff --git a/drivers/gpu/drm/scheduler/sched_fence.c b/drivers/gpu/drm/scheduler/sched_fence.c index 4843289cc8f0..69aab086b913 100644 --- a/drivers/gpu/drm/scheduler/sched_fence.c +++ b/drivers/gpu/drm/scheduler/sched_fence.c @@ -81,6 +81,11 @@ static const char *drm_sched_fence_get_timeline_name(struct dma_fence *f) return (const char *)fence->sched->name; } +static bool drm_sched_fence_enable_signaling(struct dma_fence *f) +{ + return true; +} + /** * amd_sched_fence_free - free up the fence memory * @@ -129,12 +134,18 @@ static void drm_sched_fence_release_finished(struct dma_fence *f) const struct dma_fence_ops drm_sched_fence_ops_scheduled = { .get_driver_name = drm_sched_fence_get_driver_name, .get_timeline_name = drm_sched_fence_get_timeline_name, + .enable_signaling = drm_sched_fence_enable_signaling, + .signaled = NULL, + .wait = dma_fence_default_wait, .release = drm_sched_fence_release_scheduled, }; const struct dma_fence_ops drm_sched_fence_ops_finished = { .get_driver_name = drm_sched_fence_get_driver_name, .get_timeline_name = drm_sched_fence_get_timeline_name, + .enable_signaling = drm_sched_fence_enable_signaling, + .signaled = NULL, + .wait = dma_fence_default_wait, .release = drm_sched_fence_release_finished, }; |