diff options
author | Oliver Neukum <oneukum@suse.de> | 2014-11-20 14:54:35 +0100 |
---|---|---|
committer | Zefan Li <lizefan@huawei.com> | 2015-04-14 17:33:43 +0800 |
commit | affd0637d5b1569ed8537b2bbe113da93e5ae734 (patch) | |
tree | 8a32a2b5b6125d0010e56abae131273d8a593f3b | |
parent | 58bd20d3ec596eef0a00e1a96cb7cb4025a7c6da (diff) |
cdc-acm: memory leak in error case
commit d908f8478a8d18e66c80a12adb27764920c1f1ca upstream.
If probe() fails not only the attributes need to be removed
but also the memory freed.
Reported-by: Ahmed Tamrawi <ahmedtamrawi@gmail.com>
Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Zefan Li <lizefan@huawei.com>
-rw-r--r-- | drivers/usb/class/cdc-acm.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c index 8f4a628d3382..cd8550a18282 100644 --- a/drivers/usb/class/cdc-acm.c +++ b/drivers/usb/class/cdc-acm.c @@ -1429,6 +1429,7 @@ static void acm_disconnect(struct usb_interface *intf) &dev_attr_wCountryCodes); device_remove_file(&acm->control->dev, &dev_attr_iCountryCodeRelDate); + kfree(acm->country_codes); } device_remove_file(&acm->control->dev, &dev_attr_bmCapabilities); usb_set_intfdata(acm->control, NULL); |