Re: vfs-scale, d_revalidate from nfsd

From: Al Viro
Date: Thu Jan 13 2011 - 22:21:16 EST


On Fri, Jan 14, 2011 at 02:12:35PM +1100, Nick Piggin wrote:
> The main idea here would be to just pass in a flags parameter rather
> thank poking in nd to get the rcu-walk status. That would solve this
> problem and also avoid nd for most filesystems that don't care about
> it.

Start with nd->flags getting passed explicitly, and be ready to see
* call on the final stage of open split away and folded with
->lookup() and ->open()/->creat()
* the rest of callers to lose nd completely.
That's what's going to happen in the next cycle.

BTW, why on the earth do you have that:
static int xattr_hide_revalidate(struct dentry *dentry, struct nameidata *nd)
{
if (nd->flags & LOOKUP_RCU)
return -ECHILD;
return -EPERM;
}
when the sole intent of that sucker is to have dentry of /.xattr (pinned
in dcache and hashed all along) rejected on lookups from root? IOW, WTF
bother with -ECHILD here at all?
--
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/