]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - fs/coda/cache.c
fs: dcache scale subdirs
[karo-tx-linux.git] / fs / coda / cache.c
index 9060f08e70cf10d79eb224dccd40b601398e2a26..859393fca2b7a28681de298652d6bac5f5a994c1 100644 (file)
@@ -94,6 +94,7 @@ static void coda_flag_children(struct dentry *parent, int flag)
        struct dentry *de;
 
        spin_lock(&dcache_lock);
+       spin_lock(&parent->d_lock);
        list_for_each(child, &parent->d_subdirs)
        {
                de = list_entry(child, struct dentry, d_u.d_child);
@@ -102,6 +103,7 @@ static void coda_flag_children(struct dentry *parent, int flag)
                        continue;
                coda_flag_inode(de->d_inode, flag);
        }
+       spin_unlock(&parent->d_lock);
        spin_unlock(&dcache_lock);
        return; 
 }