Re: [PATCH] locks: rename file-private locks to file-description locks

From: Jeff Layton
Date: Mon Apr 21 2014 - 12:45:59 EST


On Mon, 21 Apr 2014 09:09:27 -0700
Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote:

> On Mon, Apr 21, 2014 at 04:23:54PM +0200, Michael Kerrisk (man-pages) wrote:
> >
> > There's at least two problems to solve here:
> >
> > 1) "File private locks" is _meaningless_ as a term. Elsewhere
> > (http://thread.gmane.org/gmane.network.samba.internals/76414/focus=1685376),
>
> It's indeed not a very good choice, but the new name is even worse.
> Just call them non-broken locks? :) Or not give them a name an just
> append a 2 to the fcntls? :)
>

I think we'll need to give them a name, if only to make it possible to
document this stuff.

I'm in Jeremy's camp on this one. I don't really care what that name
*is*. I just need to know what it is so I can finish up the docs and
make any changes to the interface that are necessary.

> > 2) The new API constants (F_SETLKP, F_SETLKPW, F_GETLKP) have names
> > that are visually very close to the traditional POSIX lock names
> > (F_SETLK, F_SETLKW, F_GETLK). That's an accident waiting to happen
> > when someone mistypes in code and/or misses such a misttyping
> > when reading code. That really must be fixed.
>
> I don't think so. They also should have a name very similar because
> they have the same semantics with a major bug fixed. In fact I can't
> think of anyone who would actually want the old behavior.
>

On this point, I agree with Michael. It would be easy to mix up the
names when scanning by eye, so I think there is some value in making
these more visually distinct. I rather like the idea of changing
F_SETLKP to F_*_SETLK. The question is what to put in place of the
wildcard there, and that sort of hinges on the name...

--
Jeff Layton <jlayton@xxxxxxxxxx>
--
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/