[RAMEN9610-21564]do_last(): fetch directory ->i_mode and ->i_uid before it's too...
authorAl Viro <viro@zeniv.linux.org.uk>
Sun, 26 Jan 2020 14:29:34 +0000 (09:29 -0500)
committerchenyt9 <chenyt9@lenovo.com>
Tue, 17 Nov 2020 08:37:28 +0000 (16:37 +0800)
commit00c8c516282de9c188e4401f49df3af43a3fa495
tree75b228c157c123ba3e382cc752f004029c41d917
parent0bcb164d38e5f36f3e309a5130f690c9526696c0
[RAMEN9610-21564]do_last(): fetch directory ->i_mode and ->i_uid before it's too late

commit d0cb50185ae942b03c4327be322055d622dc79f6 upstream.

may_create_in_sticky() call is done when we already have dropped the
reference to dir.

Change-Id: Ied338ffbf1c0ab7a9ed65dfb25fc44bde879d64b
Fixes: 30aba6656f61e (namei: allow restricted O_CREAT of FIFOs and regular files)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/namei.c