]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
use ->d_seq to get coherency between ->d_inode and ->d_flags
authorAl Viro <viro@zeniv.linux.org.uk>
Mon, 29 Feb 2016 17:12:46 +0000 (12:12 -0500)
committerSasha Levin <sasha.levin@oracle.com>
Wed, 9 Mar 2016 18:15:20 +0000 (13:15 -0500)
commitc8ce76e3c6cd937e8b3fd8ae3573f23767b70eca
tree07ab627f7d958549def9388a077e003c400c1b62
parent4950beba6231d72c54aa5f52d96487fdda8292ed
use ->d_seq to get coherency between ->d_inode and ->d_flags

[ Upstream commit a528aca7f359f4b0b1d72ae406097e491a5ba9ea ]

Games with ordering and barriers are way too brittle.  Just
bump ->d_seq before and after updating ->d_inode and ->d_flags
type bits, so that verifying ->d_seq would guarantee they are
coherent.

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>
fs/dcache.c
include/linux/dcache.h