]> git.baikalelectronics.ru Git - kernel.git/commit
fix bogus path_put() of nd->root after some unlazy_walk() failures
authorAl Viro <viro@zeniv.linux.org.uk>
Fri, 29 Nov 2013 06:48:32 +0000 (01:48 -0500)
committerAl Viro <viro@zeniv.linux.org.uk>
Fri, 29 Nov 2013 06:50:51 +0000 (01:50 -0500)
commit4ef0fea49d75979d9063a13f9d138626f811974e
tree1518f3a778b105f737b3ba8453ec557ac8234f6d
parent9b68676fb4b3cfdde9651876eac1c64bd3257a2b
fix bogus path_put() of nd->root after some unlazy_walk() failures

Failure to grab reference to parent dentry should go through the
same cleanup as nd->seq mismatch.  As it is, we might end up with
caller thinking it needs to path_put() nd->root, with obvious
nasty results once we'd hit that bug enough times to drive the
refcount of root dentry all the way to zero...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/namei.c