drm/exynos/ipp: clean memory nodes on command node cleaning
The nodes should be removed before removing command node. Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> Reviewed-by: Joonyoung Shim <jy0922.shim@samsung.com> Signed-off-by: Inki Dae <inki.dae@samsung.com>
This commit is contained in:
@@ -603,11 +603,16 @@ static void ipp_clean_mem_nodes(struct drm_device *drm_dev,
|
|||||||
static void ipp_clean_cmd_node(struct ipp_context *ctx,
|
static void ipp_clean_cmd_node(struct ipp_context *ctx,
|
||||||
struct drm_exynos_ipp_cmd_node *c_node)
|
struct drm_exynos_ipp_cmd_node *c_node)
|
||||||
{
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
/* cancel works */
|
/* cancel works */
|
||||||
cancel_work_sync(&c_node->start_work->work);
|
cancel_work_sync(&c_node->start_work->work);
|
||||||
cancel_work_sync(&c_node->stop_work->work);
|
cancel_work_sync(&c_node->stop_work->work);
|
||||||
cancel_work_sync(&c_node->event_work->work);
|
cancel_work_sync(&c_node->event_work->work);
|
||||||
|
|
||||||
|
for_each_ipp_ops(i)
|
||||||
|
ipp_clean_mem_nodes(ctx->subdrv.drm_dev, c_node, i);
|
||||||
|
|
||||||
/* delete list */
|
/* delete list */
|
||||||
list_del(&c_node->list);
|
list_del(&c_node->list);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user