From: Takashi Iwai Date: Thu, 4 Dec 2014 10:56:42 +0000 (+0100) Subject: drm: Fix memory leak at error path of drm_read() X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=a0a0bde32a4668656cdffac677032a101c170c6b;p=GitHub%2FLineageOS%2FG12%2Fandroid_kernel_amlogic_linux-4.9.git drm: Fix memory leak at error path of drm_read() Note that the read manpages explicitly states that the read position is undefined on error. Since EFAULT is just a userspace bug we are therefore fine with just dropping the event on the floor. Signed-off-by: Takashi Iwai [danvet: Add note that just dropping the event is ok.] Signed-off-by: Daniel Vetter --- diff --git a/drivers/gpu/drm/drm_fops.c b/drivers/gpu/drm/drm_fops.c index 91e1105f2800..0b9514b6cd64 100644 --- a/drivers/gpu/drm/drm_fops.c +++ b/drivers/gpu/drm/drm_fops.c @@ -527,6 +527,7 @@ ssize_t drm_read(struct file *filp, char __user *buffer, if (copy_to_user(buffer + total, e->event, e->event->length)) { total = -EFAULT; + e->destroy(e); break; }