projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
481bf49
)
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:26:44 +0000
(11:26 +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 035e3038c4de4d2f772ab95954ccf53af24bc9be..b1e6ca98d0af49db53f6631cfc8819cab76ab588 100644
(file)
--- a/
kernel/irq/irqdomain.c
+++ b/
kernel/irq/irqdomain.c
@@
-1913,7
+1913,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)