Re: [PATCH 7/5] Optimise d_find_alias()

From: Al Viro
Date: Fri Mar 03 2006 - 10:43:56 EST


On Fri, Mar 03, 2006 at 03:45:52AM -0800, Andrew Morton wrote:
> David Howells <dhowells@xxxxxxxxxx> wrote:
> >
> > struct dentry * d_find_alias(struct inode *inode)
> > {
> > - struct dentry *de;
> > - spin_lock(&dcache_lock);
> > - de = __d_find_alias(inode, 0);
> > - spin_unlock(&dcache_lock);
> > + struct dentry *de = NULL;
> > + if (!list_empty(&inode->i_dentry)) {
> > + spin_lock(&dcache_lock);
> > + de = __d_find_alias(inode, 0);
> > + spin_unlock(&dcache_lock);
> > + }
> > return de;
> > }
>
> How can we get away without a barrier?

What would it buy you?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/