Merge branch 'work.sane_pwd' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[linux-2.6-microblaze.git] / fs / dcache.c
index 95d71ed..cddf397 100644 (file)
@@ -419,6 +419,8 @@ static void dentry_lru_add(struct dentry *dentry)
 {
        if (unlikely(!(dentry->d_flags & DCACHE_LRU_LIST)))
                d_lru_add(dentry);
+       else if (unlikely(!(dentry->d_flags & DCACHE_REFERENCED)))
+               dentry->d_flags |= DCACHE_REFERENCED;
 }
 
 /**
@@ -779,8 +781,6 @@ repeat:
                        goto kill_it;
        }
 
-       if (!(dentry->d_flags & DCACHE_REFERENCED))
-               dentry->d_flags |= DCACHE_REFERENCED;
        dentry_lru_add(dentry);
 
        dentry->d_lockref.count--;