|
@@ -938,8 +938,7 @@ void lockdep_annotate_inode_mutex_key(struct inode *inode)
|
|
|
struct file_system_type *type = inode->i_sb->s_type;
|
|
|
|
|
|
/* Set new key only if filesystem hasn't already changed it */
|
|
|
- if (!lockdep_match_class(&inode->i_mutex,
|
|
|
- &type->i_mutex_key)) {
|
|
|
+ if (lockdep_match_class(&inode->i_mutex, &type->i_mutex_key)) {
|
|
|
/*
|
|
|
* ensure nobody is actually holding i_mutex
|
|
|
*/
|
|
@@ -966,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);
|
|
|
}
|