Re: [PATCH v2 01/17] locks: consolidate "nolease" routines

Jeff Layton
2014-09-05T11:48:30Z

On Thu, 4 Sep 2014 13:12:00 -0700
Christoph Hellwig <hch@infradead.org> wrote:

> On Thu, Sep 04, 2014 at 02:25:35PM -0400, Trond Myklebust wrote:
> > Actually, it looks as if when you compile with !CONFIG_FILE_LOCKING,
> > then fcntl_setlease() returns the value '0' (which would be
> > "success!"). The word "confusing" only begins to describe it all.
>
> That's incorrect for sure, we should agree on a single sensible code
> for:
>
> 1) !CONFIG_FILE_LOCKING
> 2) !lease_enable
> 3) filesystem doesn't support leases.
>

Agreed. I think -ENOLCK is really better than -EINVAL.

I usually take -EINVAL to mean "you sent me something bogus". Whereas
-ENOLCK just says "locking doesn't work". -ENOLCK seems closer to the
situation in all 3 cases above.

That said, this is a user-visible change. The main userland consumer of
leases (AFAIK) is samba, so I'll take a peek at that code and run it by
them before merging anything.

--
Jeff Layton <jlayton@primarydata.com>