From 6f7d48ea6541ac8c1000b7515c9fc458ba3d0f21 Mon Sep 17 00:00:00 2001 From: Andrzej Hajda Date: Thu, 28 Aug 2014 11:07:26 +0200 Subject: [PATCH] drm/exynos/ipp: cancel works before command node clean All pending works should be canceled prior to its removal. Signed-off-by: Andrzej Hajda Reviewed-by: Joonyoung Shim Signed-off-by: Inki Dae --- drivers/gpu/drm/exynos/exynos_drm_ipp.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/gpu/drm/exynos/exynos_drm_ipp.c b/drivers/gpu/drm/exynos/exynos_drm_ipp.c index da917caacce0..97709664b7c2 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_ipp.c +++ b/drivers/gpu/drm/exynos/exynos_drm_ipp.c @@ -502,6 +502,11 @@ int exynos_drm_ipp_set_property(struct drm_device *drm_dev, void *data, 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);