]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commitdiff
drm/nouveau: remove unused nouveau_fence_work()
authorBen Skeggs <bskeggs@redhat.com>
Tue, 31 Oct 2017 17:56:20 +0000 (03:56 +1000)
committerBen Skeggs <bskeggs@redhat.com>
Thu, 2 Nov 2017 03:32:33 +0000 (13:32 +1000)
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/nouveau_fence.c
drivers/gpu/drm/nouveau/nouveau_fence.h

index 3e4412d11571a6083835dbab61b5647d512200d7..503fa94dc06dbdb2b5fe5f1b098aace4f4777f1a 100644 (file)
@@ -199,62 +199,6 @@ nouveau_fence_context_new(struct nouveau_channel *chan, struct nouveau_fence_cha
        WARN_ON(ret);
 }
 
-struct nouveau_fence_work {
-       struct work_struct work;
-       struct dma_fence_cb cb;
-       void (*func)(void *);
-       void *data;
-};
-
-static void
-nouveau_fence_work_handler(struct work_struct *kwork)
-{
-       struct nouveau_fence_work *work = container_of(kwork, typeof(*work), work);
-       work->func(work->data);
-       kfree(work);
-}
-
-static void nouveau_fence_work_cb(struct dma_fence *fence, struct dma_fence_cb *cb)
-{
-       struct nouveau_fence_work *work = container_of(cb, typeof(*work), cb);
-
-       schedule_work(&work->work);
-}
-
-void
-nouveau_fence_work(struct dma_fence *fence,
-                  void (*func)(void *), void *data)
-{
-       struct nouveau_fence_work *work;
-
-       if (dma_fence_is_signaled(fence))
-               goto err;
-
-       work = kmalloc(sizeof(*work), GFP_KERNEL);
-       if (!work) {
-               /*
-                * this might not be a nouveau fence any more,
-                * so force a lazy wait here
-                */
-               WARN_ON(nouveau_fence_wait((struct nouveau_fence *)fence,
-                                          true, false));
-               goto err;
-       }
-
-       INIT_WORK(&work->work, nouveau_fence_work_handler);
-       work->func = func;
-       work->data = data;
-
-       if (dma_fence_add_callback(fence, &work->cb, nouveau_fence_work_cb) < 0)
-               goto err_free;
-       return;
-
-err_free:
-       kfree(work);
-err:
-       func(data);
-}
-
 int
 nouveau_fence_emit(struct nouveau_fence *fence, struct nouveau_channel *chan)
 {
index d32e58b66a7558049c7ad9e6dd6e0a6a24d8f902..c36031aa013e7c3bd00d66876d13dea1a6e08e6a 100644 (file)
@@ -22,7 +22,6 @@ void nouveau_fence_unref(struct nouveau_fence **);
 
 int  nouveau_fence_emit(struct nouveau_fence *, struct nouveau_channel *);
 bool nouveau_fence_done(struct nouveau_fence *);
-void nouveau_fence_work(struct dma_fence *, void (*)(void *), void *);
 int  nouveau_fence_wait(struct nouveau_fence *, bool lazy, bool intr);
 int  nouveau_fence_sync(struct nouveau_bo *, struct nouveau_channel *, bool exclusive, bool intr);