gpu: ipu-v3: image-convert: Only wait for abort completion if active run
authorSteve Longerbeam <slongerbeam@gmail.com>
Wed, 19 Sep 2018 23:13:03 +0000 (16:13 -0700)
committerPhilipp Zabel <p.zabel@pengutronix.de>
Mon, 5 Nov 2018 13:40:07 +0000 (14:40 +0100)
Only wait for the ctx->aborted completion if there is an active run
in progress, otherwise the wait will just timeout after 10 seconds.
If there is no active run in progress, the done queue just needs to
be emptied.

Signed-off-by: Steve Longerbeam <slongerbeam@gmail.com>
Tested-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
drivers/gpu/ipu-v3/ipu-image-convert.c

index 6c15bf8efaa24c38b96b69308ce92afde08fc150..e3e032252604d35070987e12a7c95892fd40d370 100644 (file)
@@ -1562,9 +1562,14 @@ static void __ipu_image_convert_abort(struct ipu_image_convert_ctx *ctx)
                return;
        }
 
+       if (!active_run) {
+               empty_done_q(chan);
+               return;
+       }
+
        dev_dbg(priv->ipu->dev,
-               "%s: task %u: wait for completion: %d runs, active run %p\n",
-               __func__, chan->ic_task, run_count, active_run);
+               "%s: task %u: wait for completion: %d runs\n",
+               __func__, chan->ic_task, run_count);
 
        ret = wait_for_completion_timeout(&ctx->aborted,
                                          msecs_to_jiffies(10000));