On Tue, Sep 20, 2022 at 05:46:25PM -0400, Sasha Levin wrote: > This is a note to let you know that I've just added the patch titled > > net: mvpp2: debugfs: fix memory leak when using debugfs_lookup() > > to the 5.10-stable tree which can be found at: > http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary > > The filename of the patch is: > net-mvpp2-debugfs-fix-memory-leak-when-using-debugfs.patch > and it can be found in the queue-5.10 subdirectory. > > If you, or anyone else, feels it should not be added to the stable tree, > please let <stable@xxxxxxxxxxxxxxx> know about it. > > > > commit 24f9e4af2b16c42327cde7198834a5d58aacb2f8 > Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> > Date: Fri Sep 2 15:41:11 2022 +0200 > > net: mvpp2: debugfs: fix memory leak when using debugfs_lookup() > > [ Upstream commit fe2c9c61f668cde28dac2b188028c5299cedcc1e ] > > When calling debugfs_lookup() the result must have dput() called on it, > otherwise the memory will leak over time. Fix this up to be much > simpler logic and only create the root debugfs directory once when the > driver is first accessed. That resolves the memory leak and makes > things more obvious as to what the intent is. > > Cc: Marcin Wojtas <mw@xxxxxxxxxxxx> > Cc: Russell King <linux@xxxxxxxxxxxxxxx> > Cc: "David S. Miller" <davem@xxxxxxxxxxxxx> > Cc: Eric Dumazet <edumazet@xxxxxxxxxx> > Cc: Jakub Kicinski <kuba@xxxxxxxxxx> > Cc: Paolo Abeni <pabeni@xxxxxxxxxx> > Cc: netdev@xxxxxxxxxxxxxxx > Cc: stable <stable@xxxxxxxxxx> > Fixes: 21da57a23125 ("net: mvpp2: add a debugfs interface for the Header Parser") > Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> > Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx> > Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx> > > diff --git a/drivers/net/ethernet/marvell/mvpp2/mvpp2_debugfs.c b/drivers/net/ethernet/marvell/mvpp2/mvpp2_debugfs.c > index 4a3baa7e0142..0eec05d905eb 100644 > --- a/drivers/net/ethernet/marvell/mvpp2/mvpp2_debugfs.c > +++ b/drivers/net/ethernet/marvell/mvpp2/mvpp2_debugfs.c > @@ -700,10 +700,10 @@ void mvpp2_dbgfs_cleanup(struct mvpp2 *priv) > > void mvpp2_dbgfs_init(struct mvpp2 *priv, const char *name) > { > - struct dentry *mvpp2_dir, *mvpp2_root; > + static struct dentry *mvpp2_root; > + struct dentry *mvpp2_dir; > int ret, i; > > - mvpp2_root = debugfs_lookup(MVPP2_DRIVER_NAME, NULL); > if (!mvpp2_root) > mvpp2_root = debugfs_create_dir(MVPP2_DRIVER_NAME, NULL); > I dropped this at the request of Russell last time around, and will be fixing this up in a "better" way later this week, so I will drop this from the stable queues as well. thanks, greg k-h