mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 03:15:31 +09:00
autofs: fix a leak in autofs_expire_indirect()
[ Upstream commit 03ad0d703d ]
if the second call of should_expire() in there ends up
grabbing and returning a new reference to dentry, we need
to drop it before continuing.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
c44d21f822
commit
d4bc855afd
@@ -501,9 +501,10 @@ static struct dentry *autofs_expire_indirect(struct super_block *sb,
|
||||
*/
|
||||
how &= ~AUTOFS_EXP_LEAVES;
|
||||
found = should_expire(expired, mnt, timeout, how);
|
||||
if (!found || found != expired)
|
||||
/* Something has changed, continue */
|
||||
if (found != expired) { // something has changed, continue
|
||||
dput(found);
|
||||
goto next;
|
||||
}
|
||||
|
||||
if (expired != dentry)
|
||||
dput(dentry);
|
||||
|
||||
Reference in New Issue
Block a user