drm/exynos/ipp: cancel works before command node clean
authorAndrzej Hajda <[email protected]>
Thu, 28 Aug 2014 09:07:26 +0000 (11:07 +0200)
committerInki Dae <[email protected]>
Fri, 19 Sep 2014 15:56:10 +0000 (00:56 +0900)
All pending works should be canceled prior to its removal.

Signed-off-by: Andrzej Hajda <[email protected]>
Reviewed-by: Joonyoung Shim <[email protected]>
Signed-off-by: Inki Dae <[email protected]>
drivers/gpu/drm/exynos/exynos_drm_ipp.c

index da917caacce0fcb763b7b35c719dcf65754b6133..97709664b7c2a3845ea7d15c465506c5f6d93ad3 100644 (file)
@@ -502,6 +502,11 @@ err_clear:
 static void ipp_clean_cmd_node(struct ipp_context *ctx,
                                struct drm_exynos_ipp_cmd_node *c_node)
 {
+       /* cancel works */
+       cancel_work_sync(&c_node->start_work->work);
+       cancel_work_sync(&c_node->stop_work->work);
+       cancel_work_sync(&c_node->event_work->work);
+
        /* delete list */
        list_del(&c_node->list);