[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)
committerStricted <info@stricted.net>
Fri, 16 Oct 2020 20:56:06 +0000 (20:56 +0000)
commit5af8be5c351e2b96e726b64e994693b500e911e2
tree3c1bde31171ba3eb51c996b7e6895279fd6e5fb4
parentd52001ca0f8aa39e4f9862e4ca5bc0709e19dcb8
[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