summaryrefslogtreecommitdiffstats
path: root/drivers/media/usb/cx231xx/Makefile
diff options
context:
space:
mode:
authorAlexey Khoroshilov <khoroshilov@ispras.ru>2013-10-07 18:06:04 -0300
committerMauro Carvalho Chehab <m.chehab@samsung.com>2013-10-17 06:05:28 -0300
commit256d013a9bcc9a39b2e4b34ab19219bd054cf270 (patch)
treeb16380050dbe612e9c3a60e9f5bd5d6b006faaaf /drivers/media/usb/cx231xx/Makefile
parent1f61d41585f8a7a52d67fd3d6aa4aa6db75f360c (diff)
downloadblackbird-op-linux-256d013a9bcc9a39b2e4b34ab19219bd054cf270.tar.gz
blackbird-op-linux-256d013a9bcc9a39b2e4b34ab19219bd054cf270.zip
[media] cx231xx: fix double free and leaks on failure path in cx231xx_usb_probe()
There are numerous issues in error handling code of cx231xx initialization. Double free (when cx231xx_init_dev() calls kfree(dev) via cx231xx_release_resources() and then cx231xx_usb_probe() does the same) and memory leaks (e.g. usb_get_dev() before (ifnum != 1) check in cx231xx_usb_probe()) are just a few of them. The patch fixes the issues in cx231xx_usb_probe() and cx231xx_init_dev() by moving usb_get_dev(interface_to_usbdev(interface)) below in code and implementing proper error handling. Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Diffstat (limited to 'drivers/media/usb/cx231xx/Makefile')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud