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>
Sun, 1 Dec 2019 08:14:26 +0000 (09:14 +0100)
commita96430cca803da3b353ede3231692eea22d86715
treeb6e89ceed583b24141edbf46682908a7f4271367
parentaf6bf45e59b0899bc77b0dccd47f476d1f6f1832
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