kernel/printk/index.c: 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: Chris Down <chris@chrisdown.name> Cc: Petr Mladek <pmladek@suse.com> Cc: Sergey Senozhatsky <senozhatsky@chromium.org> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: John Ogness <john.ogness@linutronix.de> Cc: linux-kernel@vger.kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Reviewed-by: Sergey Senozhatsky <senozhatsky@chromium.org> Reviewed-by: John Ogness <john.ogness@linutronix.de> Reviewed-by: Petr Mladek <pmladek@suse.com> Signed-off-by: Petr Mladek <pmladek@suse.com> Link: https://lore.kernel.org/r/20230202151411.2308576-1-gregkh@linuxfoundation.org
This commit is contained in:
parent
f2e4cca2f6
commit
55bf243c51
|
@ -145,7 +145,7 @@ static void pi_create_file(struct module *mod)
|
||||||
#ifdef CONFIG_MODULES
|
#ifdef CONFIG_MODULES
|
||||||
static void pi_remove_file(struct module *mod)
|
static void pi_remove_file(struct module *mod)
|
||||||
{
|
{
|
||||||
debugfs_remove(debugfs_lookup(pi_get_module_name(mod), dfs_index));
|
debugfs_lookup_and_remove(pi_get_module_name(mod), dfs_index);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int pi_module_notify(struct notifier_block *nb, unsigned long op,
|
static int pi_module_notify(struct notifier_block *nb, unsigned long op,
|
||||||
|
|
Loading…
Reference in New Issue