1. 24 10月, 2011 1 次提交
  2. 18 10月, 2011 3 次提交
  3. 11 10月, 2011 2 次提交
  4. 27 9月, 2011 4 次提交
  5. 19 9月, 2011 2 次提交
    • J
      nfsd4: hash closed stateid's like any other · f7a4d872
      J. Bruce Fields 提交于
      Look up closed stateid's in the stateid hash like any other stateid
      rather than searching the close lru.
      
      This is simpler, and fixes a bug: currently we handle only the case of a
      close that is the last close for a given stateowner, but not the case of
      a close for a stateowner that still has active opens on other files.
      Thus in a case like:
      
      	open(owner, file1)
      	open(owner, file2)
      	close(owner, file2)
      	close(owner, file2)
      
      the final close won't be recognized as a retransmission.
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      f7a4d872
    • J
      nfsd4: construct stateid from clientid and counter · d3b313a4
      J. Bruce Fields 提交于
      Including the full clientid in the on-the-wire stateid allows more
      reliable detection of bad vs. expired stateid's, simplifies code, and
      ensures we won't reuse the opaque part of the stateid (as we currently
      do when the same openowner closes and reopens the same file).
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      d3b313a4
  6. 17 9月, 2011 2 次提交
  7. 14 9月, 2011 5 次提交
  8. 07 9月, 2011 1 次提交
  9. 04 9月, 2011 1 次提交
  10. 01 9月, 2011 4 次提交
  11. 28 8月, 2011 2 次提交
  12. 20 8月, 2011 1 次提交
  13. 16 7月, 2011 1 次提交
  14. 18 3月, 2011 1 次提交
  15. 14 2月, 2011 1 次提交
    • J
      nfsd4: acquire only one lease per file · acfdf5c3
      J. Bruce Fields 提交于
      Instead of acquiring one lease each time another client opens a file,
      nfsd can acquire just one lease to represent all of them, and reference
      count it to determine when to release it.
      
      This fixes a regression introduced by
      c45821d2 "locks: eliminate fl_mylease
      callback": after that patch, only the struct file * is used to determine
      who owns a given lease.  But since we recently converted the server to
      share a single struct file per open, if we acquire multiple leases on
      the same file from nfsd, it then becomes impossible on unlocking a lease
      to determine which of those leases (all of whom share the same struct
      file *) we meant to remove.
      
      Thanks to Takashi Iwai <tiwai@suse.de> for catching a bug in a previous
      version of this patch.
      Tested-by: NTakashi Iwai <tiwai@suse.de>
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      acfdf5c3
  16. 12 1月, 2011 4 次提交
  17. 05 1月, 2011 2 次提交
    • T
      nfs4: set source address when callback is generated · 6f3d772f
      Takuma Umeya 提交于
      when callback is generated in NFSv4 server, it doesn't set the source
      address. When an alias IP is utilized on NFSv4 server and suppose the
      client is accessing via that alias IP (e.g. eth0:0), the client invokes
      the callback to the IP address that is set on the original device (e.g.
      eth0). This behavior results in timeout of xprt.
      The patch sets the IP address that the client should invoke callback to.
      Signed-off-by: NTakuma Umeya <tumeya@redhat.com>
      [bfields@redhat.com: Simplify gen_callback arguments, use helper function]
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      6f3d772f
    • J
      nfsd4: use a single struct file for delegations · c84d500b
      J. Bruce Fields 提交于
      When we converted to sharing struct filess between nfs4 opens I went too
      far and also used the same mechanism for delegations.  But keeping
      a reference to the struct file ensures it will outlast the lease, and
      allows us to remove the lease with the same file as we added it.
      Signed-off-by: NJ. Bruce Fields <bfields@redhat.com>
      c84d500b
  18. 21 10月, 2010 3 次提交