aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexey Khoroshilov <khoroshilov@ispras.ru>2016-08-25 20:06:02 -0400
committerFelipe Balbi <felipe.balbi@linux.intel.com>2016-08-29 03:48:54 -0400
commit2a334cfaf393187d592999d1039135e000a68e9a (patch)
tree253fab9f848f8987aa38762b14333e4c8c6c9109
parent01da51981d0e80ef6ccc44e48a278f70a88f6187 (diff)
usb: gadget: goku_udc: fix memory leak in goku_probe()
Memory allocated for goku_udc device is not deallocated at error paths in goku_probe(), because gadget_release() destructor is not registered yet. Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru> Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
-rw-r--r--drivers/usb/gadget/udc/goku_udc.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/usb/gadget/udc/goku_udc.c b/drivers/usb/gadget/udc/goku_udc.c
index 1400415fe67a..5107987bd353 100644
--- a/drivers/usb/gadget/udc/goku_udc.c
+++ b/drivers/usb/gadget/udc/goku_udc.c
@@ -1838,6 +1838,8 @@ static int goku_probe(struct pci_dev *pdev, const struct pci_device_id *id)
1838err: 1838err:
1839 if (dev) 1839 if (dev)
1840 goku_remove (pdev); 1840 goku_remove (pdev);
1841 /* gadget_release is not registered yet, kfree explicitly */
1842 kfree(dev);
1841 return retval; 1843 return retval;
1842} 1844}
1843 1845