diff options
| author | Rajesh Amaravathi <rajesh@redhat.com> | 2012-04-12 14:49:44 +0530 | 
|---|---|---|
| committer | Vijay Bellur <vijay@gluster.com> | 2012-05-18 05:53:10 -0700 | 
| commit | 7914df6c6ab6d7d3905b26c1dbc5ac07d79ef10f (patch) | |
| tree | f7402ef4afe781cdc6409e0518618b17ae98a7cd /libglusterfs/src | |
| parent | 27f4cc44140260516efa5a226b9f49b761b6b559 (diff) | |
nfs/nlm: procedures for PC clients
*  This change introduces four NLMv4 procedures:
   NM_LOCK, SHARE, UNSHARE and FREE_ALL.
   These are used by PC clients (windows/dos) to control access
   to files.
   1. NM_LOCK: this lock is not monitored by statd.
   2. SHARE: A share reservation is a lock on the whole file
      that is taken whenever a file is opened on windows clients.
      This has ACCESS (N, R, W, RW) and DENY MODE (N, R, W, RW).
        ACCESS:    mode of access requested by the client;
        DENY MODE: what the requesting client wants to
                   deny other clients.
   3. UNSHARE: remove a share reservation obtained by SHARE.
      Called while closing a file.
   4. FREE_ALL: remove all share reservations and locks,
      both monitored and unmonitored, of the calling client.
*  lock and nm_lock use a common function with only
   a flag conveying whether or not to monitor a lock.
*  NOTES:
   1. SHARE reservations are not STACK_WIND'd to subsequent xlators.
      These are maintained in-memory in the nfs xlator.
   2. Consequently, for SHARE reservations to work effectively,
      all PC clients  *must* mount from the same gNfs server.
      Not doing so will result in different servers maintaining
      separate SHARE reservations which will not be enforced
      for obvious reasons.
Change-Id: Id4f22670a94ed58691a6a7f4c80aa8c11421a277
BUG: 800287
Signed-off-by: Rajesh Amaravathi <rajesh@redhat.com>
Reviewed-on: http://review.gluster.com/3356
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
Diffstat (limited to 'libglusterfs/src')
0 files changed, 0 insertions, 0 deletions
