From: Alexander Potapenko <[email protected]>

commit dad7e270ba712ba1c99cd2d91018af6044447a06 upstream.

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 <[email protected]>
Reported-by: Syzbot <[email protected]>
Signed-off-by: Hans Verkuil <[email protected]>
Signed-off-by: Mauro Carvalho Chehab <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>

---
 drivers/media/platform/vivid/vivid-vid-cap.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/media/platform/vivid/vivid-vid-cap.c
+++ b/drivers/media/platform/vivid/vivid-vid-cap.c
@@ -984,7 +984,7 @@ int vivid_vid_cap_s_selection(struct fil
                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;


Reply via email to