[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <14063C7AD467DE4B82DEDB5C278E8663010E20F842@FMSMSX108.amr.corp.intel.com>
Date: Mon, 11 May 2020 18:13:21 +0000
From: "Ruhl, Michael J" <michael.j.ruhl@...el.com>
To: Daniel Vetter <daniel.vetter@...ll.ch>,
LKML <linux-kernel@...r.kernel.org>
CC: Intel Graphics Development <intel-gfx@...ts.freedesktop.org>,
"DRI Development" <dri-devel@...ts.freedesktop.org>,
"linaro-mm-sig@...ts.linaro.org" <linaro-mm-sig@...ts.linaro.org>,
"Vetter, Daniel" <daniel.vetter@...el.com>,
Sumit Semwal <sumit.semwal@...aro.org>,
"linux-media@...r.kernel.org" <linux-media@...r.kernel.org>
Subject: RE: [Intel-gfx] [PATCH 2/3] dma-fence: use default wait function
for mock fences
>-----Original Message-----
>From: Intel-gfx <intel-gfx-bounces@...ts.freedesktop.org> On Behalf Of
>Daniel Vetter
>Sent: Monday, May 11, 2020 5:12 AM
>To: LKML <linux-kernel@...r.kernel.org>
>Cc: Daniel Vetter <daniel.vetter@...ll.ch>; Intel Graphics Development
><intel-gfx@...ts.freedesktop.org>; DRI Development <dri-
>devel@...ts.freedesktop.org>; linaro-mm-sig@...ts.linaro.org; Vetter, Daniel
><daniel.vetter@...el.com>; Sumit Semwal <sumit.semwal@...aro.org>; linux-
>media@...r.kernel.org
>Subject: [Intel-gfx] [PATCH 2/3] dma-fence: use default wait function for
>mock fences
>
>No need to micro-optmize when we're waiting in a mocked object ...
Makes sense to me.
Acked-by: Michael J. Ruhl <michael.j.ruhl@...el.com>
M
>Signed-off-by: Daniel Vetter <daniel.vetter@...el.com>
>Cc: Sumit Semwal <sumit.semwal@...aro.org>
>Cc: linux-media@...r.kernel.org
>Cc: linaro-mm-sig@...ts.linaro.org
>---
> drivers/dma-buf/st-dma-fence.c | 41 ----------------------------------
> 1 file changed, 41 deletions(-)
>
>diff --git a/drivers/dma-buf/st-dma-fence.c b/drivers/dma-buf/st-dma-
>fence.c
>index e593064341c8..8166d2984702 100644
>--- a/drivers/dma-buf/st-dma-fence.c
>+++ b/drivers/dma-buf/st-dma-fence.c
>@@ -33,50 +33,9 @@ static void mock_fence_release(struct dma_fence *f)
> kmem_cache_free(slab_fences, to_mock_fence(f));
> }
>
>-struct wait_cb {
>- struct dma_fence_cb cb;
>- struct task_struct *task;
>-};
>-
>-static void mock_wakeup(struct dma_fence *f, struct dma_fence_cb *cb)
>-{
>- wake_up_process(container_of(cb, struct wait_cb, cb)->task);
>-}
>-
>-static long mock_wait(struct dma_fence *f, bool intr, long timeout)
>-{
>- const int state = intr ? TASK_INTERRUPTIBLE :
>TASK_UNINTERRUPTIBLE;
>- struct wait_cb cb = { .task = current };
>-
>- if (dma_fence_add_callback(f, &cb.cb, mock_wakeup))
>- return timeout;
>-
>- while (timeout) {
>- set_current_state(state);
>-
>- if (test_bit(DMA_FENCE_FLAG_SIGNALED_BIT, &f->flags))
>- break;
>-
>- if (signal_pending_state(state, current))
>- break;
>-
>- timeout = schedule_timeout(timeout);
>- }
>- __set_current_state(TASK_RUNNING);
>-
>- if (!dma_fence_remove_callback(f, &cb.cb))
>- return timeout;
>-
>- if (signal_pending_state(state, current))
>- return -ERESTARTSYS;
>-
>- return -ETIME;
>-}
>-
> static const struct dma_fence_ops mock_ops = {
> .get_driver_name = mock_name,
> .get_timeline_name = mock_name,
>- .wait = mock_wait,
> .release = mock_fence_release,
> };
>
>--
>2.26.2
>
>_______________________________________________
>Intel-gfx mailing list
>Intel-gfx@...ts.freedesktop.org
>https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Powered by blists - more mailing lists