Andrew Morton <akpm@xxxxxxxx> wrote: > How can we get away without a barrier? Is this what you're thinking of: struct dentry * d_find_alias(struct inode *inode) { struct dentry *de = NULL; smp_rb(); if (!list_empty(&inode->i_dentry)) { spin_lock(&dcache_lock); de = __d_find_alias(inode, 0); spin_unlock(&dcache_lock); } return de; } David