qibfs: fix dentry leak
authorAl Viro <viro@zeniv.linux.org.uk>
Mon, 26 Feb 2024 04:58:42 +0000 (23:58 -0500)
committerAl Viro <viro@zeniv.linux.org.uk>
Mon, 26 Feb 2024 04:58:42 +0000 (23:58 -0500)
commitaa23317d0268b309bb3f0801ddd0d61813ff5afb
tree8a5ac5cebb34a45e0e5f863ebd5d43a833d5a471
parent2c88c16dc20e88dd54d2f6f4d01ae1dce6cc9654
qibfs: fix dentry leak

simple_recursive_removal() drops the pinning references to all positives
in subtree.  For the cases when its argument has been kept alive by
the pinning alone that's exactly the right thing to do, but here
the argument comes from dcache lookup, that needs to be balanced by
explicit dput().

Fixes: e41d237818598 "qib_fs: switch to simple_recursive_removal()"
Fucked-up-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
drivers/infiniband/hw/qib/qib_fs.c