drm/bridge/sii8620: fix MSC message removal
authorAndrzej Hajda <a.hajda@samsung.com>
Wed, 1 Feb 2017 07:47:38 +0000 (08:47 +0100)
committerArchit Taneja <architt@codeaurora.org>
Thu, 2 Feb 2017 09:45:25 +0000 (15:15 +0530)
Messages queue can be cleaned up by message callbacks, to avoid repeated
removal of current message it should be removed from the queue before
calling these callbacks.

Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Archit Taneja <architt@codeaurora.org>
Link: http://patchwork.freedesktop.org/patch/msgid/1485935272-17337-12-git-send-email-a.hajda@samsung.com
drivers/gpu/drm/bridge/sil-sii8620.c

index fb69353a3252dea99801322dacb230fce5006f06..a50ade6b282f464ee47d10e4f66a12f737151379 100644 (file)
@@ -272,11 +272,11 @@ static void sii8620_mt_work(struct sii8620 *ctx)
                ctx->mt_state = MT_STATE_READY;
                msg = list_first_entry(&ctx->mt_queue, struct sii8620_mt_msg,
                                       node);
+               list_del(&msg->node);
                if (msg->recv)
                        msg->recv(ctx, msg);
                if (msg->continuation)
                        msg->continuation(ctx, msg->ret);
-               list_del(&msg->node);
                kfree(msg);
        }