projects
/
platform
/
kernel
/
linux-starfive.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
512d1ed
)
kernel/irq/irqdomain.c: fix memory leak with using debugfs_lookup()
author
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Thu, 2 Feb 2023 15:15:54 +0000
(16:15 +0100)
committer
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Thu, 9 Feb 2023 10:28:21 +0000
(11:28 +0100)
commit
d83d7ed260283560700d4034a80baad46620481b
upstream.
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: Thomas Gleixner <tglx@linutronix.de>
Cc: stable <stable@kernel.org>
Reviewed-by: Marc Zyngier <maz@kernel.org>
Link:
https://lore.kernel.org/r/20230202151554.2310273-1-gregkh@linuxfoundation.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
kernel/irq/irqdomain.c
patch
|
blob
|
history
diff --git
a/kernel/irq/irqdomain.c
b/kernel/irq/irqdomain.c
index 8fe1da9614ee8db33ff75a21010e6da45f9dfbc2..e2096b51c00471da83cfd8b958a451f02d19371e 100644
(file)
--- a/
kernel/irq/irqdomain.c
+++ b/
kernel/irq/irqdomain.c
@@
-1915,7
+1915,7
@@
static void debugfs_add_domain_dir(struct irq_domain *d)
static void debugfs_remove_domain_dir(struct irq_domain *d)
{
- debugfs_
remove(debugfs_lookup(d->name, domain_dir)
);
+ debugfs_
lookup_and_remove(d->name, domain_dir
);
}
void __init irq_domain_debugfs_init(struct dentry *root)