summaryrefslogtreecommitdiff
path: root/drivers/thunderbolt
diff options
context:
space:
mode:
authorYaxiong Tian <tianyaxiong@kylinos.cn>2023-11-22 11:02:43 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-01-01 15:39:08 +0300
commit3339028dd082a789f9010f49708026950349eca1 (patch)
treec7e721be3e51035d8cc34d9b637190d29d03fa0c /drivers/thunderbolt
parent69b6596c6e4aa581eaed734497c7fcfb5c3a75fe (diff)
downloadlinux-3339028dd082a789f9010f49708026950349eca1.tar.xz
thunderbolt: Fix memory leak in margining_port_remove()
commit ac43c9122e4287bbdbe91e980fc2528acb72cc1e upstream. The dentry returned by debugfs_lookup() needs to be released by calling dput() which is missing in margining_port_remove(). Fix this by calling debugfs_lookup_and_remove() that combines both and avoids the memory leak. Fixes: d0f1e0c2a699 ("thunderbolt: Add support for receiver lane margining") Cc: stable@vger.kernel.org Signed-off-by: Yaxiong Tian <tianyaxiong@kylinos.cn> 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/debugfs.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/thunderbolt/debugfs.c b/drivers/thunderbolt/debugfs.c
index d89f92032c1c..f691bce5c147 100644
--- a/drivers/thunderbolt/debugfs.c
+++ b/drivers/thunderbolt/debugfs.c
@@ -943,7 +943,7 @@ static void margining_port_remove(struct tb_port *port)
snprintf(dir_name, sizeof(dir_name), "port%d", port->port);
parent = debugfs_lookup(dir_name, port->sw->debugfs_dir);
if (parent)
- debugfs_remove_recursive(debugfs_lookup("margining", parent));
+ debugfs_lookup_and_remove("margining", parent);
kfree(port->usb4->margining);
port->usb4->margining = NULL;