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 6c15bf8..e3e0322 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));