summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Potapenko <glider@google.com>2019-04-04 10:56:46 -0400
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>2019-04-22 11:43:50 -0400
commitdad7e270ba712ba1c99cd2d91018af6044447a06 (patch)
tree389a06a987d1a682b973f8e4ace1659410df8536
parent1f7f11e8ca15366e6c1e62e4d4dc5d1ecb3b2eb4 (diff)
downloadlinux-stable-dad7e270ba712ba1c99cd2d91018af6044447a06.tar.gz
linux-stable-dad7e270ba712ba1c99cd2d91018af6044447a06.tar.bz2
linux-stable-dad7e270ba712ba1c99cd2d91018af6044447a06.zip
media: vivid: use vfree() instead of kfree() for dev->bitmap_cap
syzkaller reported crashes on kfree() called from vivid_vid_cap_s_selection(). This looks like a simple typo, as dev->bitmap_cap is allocated with vzalloc() throughout the file. Fixes: ef834f7836ec0 ("[media] vivid: add the video capture and output parts") Signed-off-by: Alexander Potapenko <glider@google.com> Reported-by: Syzbot <syzbot+6c0effb5877f6b0344e2@syzkaller.appspotmail.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-rw-r--r--drivers/media/platform/vivid/vivid-vid-cap.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/media/platform/vivid/vivid-vid-cap.c b/drivers/media/platform/vivid/vivid-vid-cap.c
index 52eeda624d7e..530ac8decb25 100644
--- a/drivers/media/platform/vivid/vivid-vid-cap.c
+++ b/drivers/media/platform/vivid/vivid-vid-cap.c
@@ -1007,7 +1007,7 @@ int vivid_vid_cap_s_selection(struct file *file, void *fh, struct v4l2_selection
v4l2_rect_map_inside(&s->r, &dev->fmt_cap_rect);
if (dev->bitmap_cap && (compose->width != s->r.width ||
compose->height != s->r.height)) {
- kfree(dev->bitmap_cap);
+ vfree(dev->bitmap_cap);
dev->bitmap_cap = NULL;
}
*compose = s->r;