media: uvcvideo: Fix error path in control parsing failure
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Tue, 30 Jul 2019 02:14:55 +0000 (23:14 -0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 28 Nov 2019 17:29:04 +0000 (18:29 +0100)
commit1fa5c50f17f49802df087ec5d9b4410e7e3a7242
treed7ec4ec77d12f4e0de22e1cf8c49f34b5184fc03
parent42b4bc3655b7876234fcefc5d69c4d8798d83007
media: uvcvideo: Fix error path in control parsing failure

commit 8c279e9394cade640ed86ec6c6645a0e7df5e0b6 upstream.

When parsing the UVC control descriptors fails, the error path tries to
cleanup a media device that hasn't been initialised, potentially
resulting in a crash. Fix this by initialising the media device before
the error handling path can be reached.

Fixes: 5a254d751e52 ("[media] uvcvideo: Register a v4l2_device")
Reported-by: syzbot+c86454eb3af9e8a4da20@syzkaller.appspotmail.com
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/media/usb/uvc/uvc_driver.c