]> git.baikalelectronics.ru Git - kernel.git/commit
fix proc_fill_cache() in case of d_alloc_parallel() failure
authorAl Viro <viro@zeniv.linux.org.uk>
Fri, 8 Jun 2018 05:17:11 +0000 (01:17 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Fri, 8 Jun 2018 05:17:11 +0000 (01:17 -0400)
commitcc0d0aa8bc88b1fd30213f9e06f7d5d203238da6
tree249253d72c6915fc5523bbb3336a2a932c430245
parenta71f76eb2d3873ac4c281b44a8481705282fa5a4
fix proc_fill_cache() in case of d_alloc_parallel() failure

If d_alloc_parallel() returns ERR_PTR(...), we don't want to dput()
that.  Small reorganization allows to have all error-in-lookup
cases rejoin the main codepath after dput(child), avoiding the
entire problem.

Spotted-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Fixes: f0810525a1e3 "procfs: switch instantiate_t to d_splice_alias()"
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/proc/base.c