]> git.baikalelectronics.ru Git - kernel.git/commit
don't bugger nd->seq on set_root_rcu() from follow_dotdot_rcu()
authorAl Viro <viro@zeniv.linux.org.uk>
Sun, 14 Sep 2014 01:55:46 +0000 (21:55 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Sun, 14 Sep 2014 18:19:44 +0000 (14:19 -0400)
commit792d0194c69d12e27ff41bf9c6ec8fa7b8277938
tree814293d29b98c33b887c3140c11e24ccffbf9862
parent677999055d0cabb58d5c06e89be2d4c8a5fdc4be
don't bugger nd->seq on set_root_rcu() from follow_dotdot_rcu()

return the value instead, and have path_init() do the assignment.  Broken by
"vfs: Fix absolute RCU path walk failures due to uninitialized seq number",
which was Cc-stable with 2.6.38+ as destination.  This one should go where
it went.

To avoid dummy value returned in case when root is already set (it would do
no harm, actually, since the only caller that doesn't ignore the return value
is guaranteed to have nd->root *not* set, but it's more obvious that way),
lift the check into callers.  And do the same to set_root(), to keep them
in sync.

Cc: stable@vger.kernel.org # 2.6.38+
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/namei.c