summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYaxiong Tian <tianyaxiong@kylinos.cn>2023-11-22 16:02:43 +0800
committerMika Westerberg <mika.westerberg@linux.intel.com>2023-11-27 12:45:47 +0200
commitac43c9122e4287bbdbe91e980fc2528acb72cc1e (patch)
treed45f106dc4f564c46746379622739b7c03a9282b
parent2cc14f52aeb78ce3f29677c2de1f06c0e91471ab (diff)
downloadlinux-stable-ac43c9122e4287bbdbe91e980fc2528acb72cc1e.tar.gz
linux-stable-ac43c9122e4287bbdbe91e980fc2528acb72cc1e.tar.bz2
linux-stable-ac43c9122e4287bbdbe91e980fc2528acb72cc1e.zip
thunderbolt: Fix memory leak in margining_port_remove()
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>
-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 c9ddd49138d8..e324cd899719 100644
--- a/drivers/thunderbolt/debugfs.c
+++ b/drivers/thunderbolt/debugfs.c
@@ -959,7 +959,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;