[PATCH -next] drm/vkms: Fix possible memory leak in _vkms_get_crc()

From: Wei Yongjun
Date: Fri Sep 14 2018 - 21:43:40 EST


'vaddr_out' is malloced in _vkms_get_crc() and should be freed before
leaving from the error handling cases, otherwise it will cause memory
leak.

Fixes: db7f419c06d7 ("drm/vkms: Compute CRC with Cursor Plane")
Signed-off-by: Wei Yongjun <weiyongjun1@xxxxxxxxxx>
---
drivers/gpu/drm/vkms/vkms_crc.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/vkms/vkms_crc.c b/drivers/gpu/drm/vkms/vkms_crc.c
index 0a27456..9d9e814 100644
--- a/drivers/gpu/drm/vkms/vkms_crc.c
+++ b/drivers/gpu/drm/vkms/vkms_crc.c
@@ -125,6 +125,7 @@ static uint32_t _vkms_get_crc(struct vkms_crc_data *primary_crc,
mutex_lock(&vkms_obj->pages_lock);
if (WARN_ON(!vkms_obj->vaddr)) {
mutex_unlock(&vkms_obj->pages_lock);
+ kfree(vaddr_out);
return crc;
}