1. 29 Jun, 2015 1 commit
    • NeilBrown's avatar
      NFSv4: When returning a delegation, don't reclaim an incompatible open mode. · 39f897fd
      NeilBrown authored
      It is possible to have an active open with one mode, and a delegation
      for the same file with a different mode.
      In particular, a WR_ONLY open and an RD_ONLY delegation.
      This happens if a WR_ONLY open is followed by a RD_ONLY open which
      provides a delegation, but is then close.
      
      When returning the delegation, we currently try to claim opens for
      every open type (n_rdwr, n_rdonly, n_wronly).  As there is no harm
      in claiming an open for a mode that we already have, this is often
      simplest.
      
      However if the delegation only provides a subset of the modes that we
      currently have open, this will produce an error from the server.
      
      So when claiming open modes prior to returning a delegation, skip the
      open request if the mode is not covered by the delegation - the open_stateid
      must already cover that mode, so there is nothing to do.
      Signed-off-by: default avatarNeilBrown <neilb@suse.de>
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      39f897fd
  2. 27 Jun, 2015 2 commits
  3. 26 Jun, 2015 5 commits
  4. 25 Jun, 2015 3 commits
  5. 24 Jun, 2015 10 commits
  6. 22 Jun, 2015 1 commit
    • Trond Myklebust's avatar
      Merge branch 'bugfixes' · 1372a313
      Trond Myklebust authored
      * bugfixes:
        NFS: Ensure we set NFS_CONTEXT_RESEND_WRITES when requeuing writes
        pNFS: Fix a memory leak when attempted pnfs fails
        NFS: Ensure that we update the sequence id under the slot table lock
        nfs: Initialize cb_sequenceres information before validate_seqid()
        nfs: Only update callback sequnce id when CB_SEQUENCE success
        NFSv4: nfs4_handle_delegation_recall_error should ignore EAGAIN
      1372a313
  7. 20 Jun, 2015 1 commit
  8. 19 Jun, 2015 2 commits
  9. 18 Jun, 2015 4 commits
  10. 16 Jun, 2015 11 commits