On Wed, May 28, 2014 at 12:43:24PM -0700, Linus Torvalds wrote: > It does require that the dentry shrinking code always hold the RCU > lock for reading, because others may actually be doing the final > dput() while the thing is on the shrinking list (and holding the RCU > lock is what protects the entry from actually being free'd). > > NOTE! I don't claim that this fixes anything, but I do think that it > makes that whole cross-thread complexity of that DCACHE_MAY_FREE go > away. I think it's easier to understand, and it removes code in the > process. Comments? Unless I'm badly misreading your patch, you are calling dentry_kill() with rcu_read_lock() held. And that can trigger all sorts of interesting things, starting with iput() and tons of disk IO... What am I missing here? -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html