|
@@ -70,9 +70,10 @@ static int ocfs2_dentry_revalidate(struct dentry *dentry, unsigned int flags)
|
|
|
*/
|
|
|
if (inode == NULL) {
|
|
|
unsigned long gen = (unsigned long) dentry->d_fsdata;
|
|
|
- unsigned long pgen =
|
|
|
- OCFS2_I(dentry->d_parent->d_inode)->ip_dir_lock_gen;
|
|
|
-
|
|
|
+ unsigned long pgen;
|
|
|
+ spin_lock(&dentry->d_lock);
|
|
|
+ pgen = OCFS2_I(dentry->d_parent->d_inode)->ip_dir_lock_gen;
|
|
|
+ spin_unlock(&dentry->d_lock);
|
|
|
trace_ocfs2_dentry_revalidate_negative(dentry->d_name.len,
|
|
|
dentry->d_name.name,
|
|
|
pgen, gen);
|