sii8620: fix edid memory leak
authorAndrzej Hajda <a.hajda@samsung.com>
Mon, 23 Nov 2015 13:30:51 +0000 (14:30 +0100)
committerSeung-Woo Kim <sw0312.kim@samsung.com>
Wed, 14 Dec 2016 04:48:55 +0000 (13:48 +0900)
In case of error during edid retrieval, allocated memory should be freed.

Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
drivers/gpu/drm/bridge/sii8620.c

index 6094072..1bd9cf3 100644 (file)
@@ -501,8 +501,10 @@ static void sii8620_fetch_edid(struct sii8620 *ctx)
                        if (int3 & BIT_DDC_CMD_DONE)
                                break;
 
-                       if (!(cbus & BIT_CBUS_STATUS_CBUS_CONNECTED))
+                       if (!(cbus & BIT_CBUS_STATUS_CBUS_CONNECTED)) {
+                               kfree(edid);
                                return;
+                       }
                } while (1);
 
                sii8620_readb(ctx, REG_DDC_STATUS);