]> git.ipfire.org Git - thirdparty/linux.git/commit - security/selinux/hooks.c
fix breakage caused by d_find_alias() semantics change
authorAl Viro <viro@zeniv.linux.org.uk>
Wed, 25 Apr 2018 14:28:38 +0000 (10:28 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Sun, 13 May 2018 19:47:58 +0000 (15:47 -0400)
commitb127125d9db23e4856156a7c909a3c8e18b69f99
tree82ea9af2ccc31d709a71f4990323e0b8d98ca9aa
parent79f546a696bff2590169fb5684e23d65f4d9f591
fix breakage caused by d_find_alias() semantics change

"VFS: don't keep disconnected dentries on d_anon" had a non-trivial
side-effect - d_unhashed() now returns true for those dentries,
making d_find_alias() skip them altogether.  For most of its callers
that's fine - we really want a connected alias there.  However,
there is a codepath where we relied upon picking such aliases
if nothing else could be found - selinux delayed initialization
of contexts for inodes on already mounted filesystems used to
rely upon that.

Cc: stable@kernel.org # f1ee616214cb "VFS: don't keep disconnected dentries on d_anon"
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
security/selinux/hooks.c