Re: [PATCH v7 1/4] spinlock: A new lockref structure for locklessupdate of refcount

From: Al Viro
Date: Sun Sep 01 2013 - 13:49:22 EST


On Sun, Sep 01, 2013 at 01:13:06AM +0100, Al Viro wrote:
> > Actually, right now I'm debugging a variant that avoids local buffers; use
> > is %pD3 for grandparent/parent/name, etc., up to %pD4. %pd is equivalent
> > to %pD1 (just the dentry name). Keep in mind that things like NFS use
> > a _lot_ of what would be %pD2 in debugging printks and the string can grow
> > fairly long, so I'd rather live with widen() than mess with local buffers
> > here. I'll send an updated variant when I'm more or less satisfied with
> > it...
>
> Seems to be working... This doesn't include the metric arseload of
> conversions in fs/*/* - just the sprintf part.

FWIW, now that I've looked at more users (and we do have a shitload
of those), it seems that we need the following set:
dentry name
dentry path 2--4 levels deep (most of the users want 2 right now,
but that's mostly a matter of arguments being too painful to type for
deeper ones)
same for file - sure, we can just pass file->f_path.dentry,
but there's a lot of such guys and I'd like to reduce the amount of
places where we have ->f_path.dentry mentioned in source.

Suggestions regarding formats to use would be welcome. For now I'm using
pd/pd<n>/pD/pD<n>, the latter two being for struct file, but I'd gladly
take anything prettier than that.
--
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/