summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2012-03-11 02:07:28 +0400
committerAl Viro <viro@zeniv.linux.org.uk>2012-03-11 02:07:28 +0400
commit310fa7a36722017088af123043ebd231cd6bc559 (patch)
tree0943711750f1fabe4b696f7532bcc610fe37dd02
parent7f6c7e62fcc123e6bd9206da99a2163fe3facc31 (diff)
downloadlinux-310fa7a36722017088af123043ebd231cd6bc559.tar.xz
restore smp_mb() in unlock_new_inode()
wait_on_inode() doesn't have ->i_lock Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r--fs/inode.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/inode.c b/fs/inode.c
index 8affbc9c211b..83ab215baab1 100644
--- a/fs/inode.c
+++ b/fs/inode.c
@@ -965,6 +965,7 @@ void unlock_new_inode(struct inode *inode)
spin_lock(&inode->i_lock);
WARN_ON(!(inode->i_state & I_NEW));
inode->i_state &= ~I_NEW;
+ smp_mb();
wake_up_bit(&inode->i_state, __I_NEW);
spin_unlock(&inode->i_lock);
}