summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Keeping <john@metanate.com>2017-02-28 10:55:30 +0000
committerDongwoo Lee <dwoo08.lee@samsung.com>2019-11-26 11:24:59 +0900
commit4d14ee55e19c2adfe0aafe02adc5d7c3586b21ea (patch)
treefb4f561b1dfbb67241bbc62ae796e04f1baa811e
parent40b9b41e1ad617e714834cbcae0e4a86ed64ab8e (diff)
downloadlinux-4.9-exynos9110-4d14ee55e19c2adfe0aafe02adc5d7c3586b21ea.tar.gz
linux-4.9-exynos9110-4d14ee55e19c2adfe0aafe02adc5d7c3586b21ea.tar.bz2
linux-4.9-exynos9110-4d14ee55e19c2adfe0aafe02adc5d7c3586b21ea.zip
usb: gadget: configs: plug memory leak
[ Upstream commit 38355b2a44776c25b0f2ad466e8c51bb805b3032 ] When binding a gadget to a device, "name" is stored in gi->udc_name, but this does not happen when unregistering and the string is leaked. Signed-off-by: John Keeping <john@metanate.com> Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com> Signed-off-by: Sasha Levin <alexander.levin@verizon.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> [dwoo08.lee: cherry-pick linux-4.9.y stable commit 59682e70c980 to stablize configfs] Signed-off-by: Dongwoo Lee <dwoo08.lee@samsung.com> Change-Id: Ieb2bcfeed245a0b993ac6c4992af8fe27fc89d48
-rw-r--r--drivers/usb/gadget/configfs.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/usb/gadget/configfs.c b/drivers/usb/gadget/configfs.c
index bd2149527ceb..62bc1bc929f6 100644
--- a/drivers/usb/gadget/configfs.c
+++ b/drivers/usb/gadget/configfs.c
@@ -339,6 +339,7 @@ static ssize_t gadget_dev_desc_UDC_store(struct config_item *item,
ret = unregister_gadget(gi);
if (ret)
goto err;
+ kfree(name);
} else {
if (gi->composite.gadget_driver.udc_name) {
ret = -EBUSY;