linux/fs/namei.c
Al Viro 9b77cd137f namei: ->d_inode of a pinned dentry is stable only for positives
[ Upstream commit d4565649b6 ]

both do_last() and walk_component() risk picking a NULL inode out
of dentry about to become positive, *then* checking its flags and
seeing that it's not negative anymore and using (already stale by
then) value they'd fetched earlier.  Usually ends up oopsing soon
after that...

Cc: stable@vger.kernel.org # v3.13+
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
2016-03-09 13:15:13 -05:00

4586 lines
114 KiB