diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2023-02-02 15:16:21 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2023-02-08 13:33:13 +0100 |
commit | 36c893d3a759ae7c91ee7d4871ebfc7504f08c40 (patch) | |
tree | 7ede6c5cc8ced041d835e29562fa15eb0f8d0c06 /drivers/base/dd.c | |
parent | 8deb87b1e810dd558371e88ffd44339fbef27870 (diff) |
drivers: base: dd: fix memory leak with using debugfs_lookup()
When calling debugfs_lookup() the result must have dput() called on it,
otherwise the memory will leak over time. To make things simpler, just
call debugfs_lookup_and_remove() instead which handles all of the logic
at once.
Cc: "Rafael J. Wysocki" <rafael@kernel.org>
Link: https://lore.kernel.org/r/20230202141621.2296458-2-gregkh@linuxfoundation.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/base/dd.c')
-rw-r--r-- | drivers/base/dd.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/base/dd.c b/drivers/base/dd.c index 817ef27a78f7..8def2ba08a82 100644 --- a/drivers/base/dd.c +++ b/drivers/base/dd.c @@ -370,7 +370,7 @@ late_initcall(deferred_probe_initcall); static void __exit deferred_probe_exit(void) { - debugfs_remove_recursive(debugfs_lookup("devices_deferred", NULL)); + debugfs_lookup_and_remove("devices_deferred", NULL); } __exitcall(deferred_probe_exit); |