summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrzej Hajda <a.hajda@samsung.com>2016-11-25 15:17:59 +0100
committerSeung-Woo Kim <sw0312.kim@samsung.com>2016-12-14 13:54:24 +0900
commitaa2d09ec03587ff4cac008d3be0ab4b39736fcf9 (patch)
treeb9dabf19cfd62961110a86161418b001ce3a9679
parenta4cf9e542594ce69139f21d96adb2469776c4929 (diff)
drm/bridge/sii8620: fix MSC message removal
Messages queue can be cleaned up by message callbacks, to avoid premature removal of current message it should be removed from the queue before calling these callbacks. Change-Id: Ie95c291d27a1be52291cc2cd1b7dead8f24560b4 Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
-rw-r--r--drivers/gpu/drm/bridge/sil-sii8620.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/bridge/sil-sii8620.c b/drivers/gpu/drm/bridge/sil-sii8620.c
index d620e853670a..6d594f5ba3e3 100644
--- a/drivers/gpu/drm/bridge/sil-sii8620.c
+++ b/drivers/gpu/drm/bridge/sil-sii8620.c
@@ -276,11 +276,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);
}