Subject: Re: RELEASE_STATE locking type

From: Spencer Shepler <[email-masked]>
Date: Sat, 2 Mar 2002 17:31:06 -0600

On Mon, Sergey Klyushin wrote:
> I looked through the mailing list and could not find description
> of RELEASE_STATE locking type.
> Could somebody explain this locking type?

The RELEASE_STATE enum of nfs_lock_type4 is meant as a method for the
client to communicate to the server that a particular lock_owner will
non longer be locking the file.  Generally, this would be used by a
client who has a file open among several processes and one of those
processes is exiting and has locked the file in the past.  The client
sends this to the server to notify it that the lock_owner will no
longer lock the file.  The server is then able to release the state
associated with that lock_owner.

This is not meant to be a way for the client to release all locks for
a particular file.  The client is still responsible to do this.  In
fact, if the client were to use RELEASE_STATE when file locking state
is still held for the lock_owner, the server should return an error to
the client.  NFS4ERR_INVAL appears to be the most appropriate error.

-- 
Spencer

---

From: Eric Kustarz <[email-masked]>
Date: Mon, 18 Mar 2002 10:59:40 -0800 (PST)

...

>With respect to Dave's initial proposal of splitting this
>functionality into a new operation, that is okay with me.  Initially I
>was attempting to avoid another operation but it seems best to avoid
>confusion in overloading the lock_type.
>
>Other opinions?

Adding another op seems like a good idea to me.

eric