summaryrefslogtreecommitdiff
path: root/drivers/thunderbolt
diff options
context:
space:
mode:
authorMika Westerberg <mika.westerberg@linux.intel.com>2020-10-07 17:06:17 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-11-18 19:20:29 +0100
commit06c1895fe71b14354deb79366cb0dd6fa18a88a5 (patch)
tree0d0bf92dce94cc011186813f1d332315ea4b12b4 /drivers/thunderbolt
parent11c14da8d005ad7d5a52fc1470b2a03febe1e4fd (diff)
thunderbolt: Fix memory leak if ida_simple_get() fails in enumerate_services()
commit a663e0df4a374b8537562a44d1cecafb472cd65b upstream. The svc->key field is not released as it should be if ida_simple_get() fails so fix that. Fixes: 9aabb68568b4 ("thunderbolt: Fix to check return value of ida_simple_get") Cc: stable@vger.kernel.org Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/thunderbolt')
-rw-r--r--drivers/thunderbolt/xdomain.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/thunderbolt/xdomain.c b/drivers/thunderbolt/xdomain.c
index 4e17a7c7bf0a..9e9bf8771345 100644
--- a/drivers/thunderbolt/xdomain.c
+++ b/drivers/thunderbolt/xdomain.c
@@ -830,6 +830,7 @@ static void enumerate_services(struct tb_xdomain *xd)
id = ida_simple_get(&xd->service_ids, 0, 0, GFP_KERNEL);
if (id < 0) {
+ kfree(svc->key);
kfree(svc);
break;
}