On Tue, Sep 10, 2013 at 3:59 PM, Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote: > > It's not that bad, actually; I think the variant I've pushed right now > (vfs.git#for-next, head at f5e1dd34561e0fb06400b378d595198918833021) should > be doing the right thing. It ought to cover everything in your branch > in -next from "fs: bump inode and dentry counters to long" on to the > end of queue. >From a quick look, this looks pretty broken: if (list_lru_add(&dentry->d_sb->s_dentry_lru, &dentry->d_lru)) this_cpu_inc(nr_dentry_unused); dentry->d_flags |= DCACHE_LRU_LIST; because if that list_lru_add() can fail, then we shouldn't set the DCACHE_LRU_LIST bit either. That said, I don't see how it can fail. We only do this with the dentry locked, and when it's not already on the LRU list. So I think the "if()" is just misleading and unnecessary - but the code works. Linus -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html