1. 31 7月, 2010 1 次提交
  2. 15 5月, 2010 1 次提交
  3. 23 4月, 2010 1 次提交
    • T
      NFS: Fix an unstable write data integrity race · 71d0a611
      Trond Myklebust 提交于
      Commit 2c61be0a (NFS: Ensure that the WRITE
      and COMMIT RPC calls are always uninterruptible) exposed a race on file
      close. In order to ensure correct close-to-open behaviour, we want to wait
      for all outstanding background commit operations to complete.
      
      This patch adds an inode flag that indicates if a commit operation is under
      way, and provides a mechanism to allow ->write_inode() to wait for its
      completion if this is a data integrity flush.
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      71d0a611
  4. 06 3月, 2010 6 次提交
  5. 27 9月, 2009 1 次提交
  6. 12 8月, 2009 1 次提交
  7. 03 4月, 2009 3 次提交
  8. 28 3月, 2009 1 次提交
  9. 12 3月, 2009 2 次提交
    • T
      NFS: Throttle page dirtying while we're flushing to disk · 72cb77f4
      Trond Myklebust 提交于
      The following patch is a combination of a patch by myself and Peter
      Staubach.
      
      Trond: If we allow other processes to dirty pages while a process is doing
      a consistency sync to disk, we can end up never making progress.
      
      Peter: Attached is a patch which addresses a continuing problem with
      the NFS client generating out of order WRITE requests.  While
      this is compliant with all of the current protocol
      specifications, there are servers in the market which can not
      handle out of order WRITE requests very well.  Also, this may
      lead to sub-optimal block allocations in the underlying file
      system on the server.  This may cause the read throughputs to
      be reduced when reading the file from the server.
      
      Peter: There has been a lot of work recently done to address out of
      order issues on a systemic level.  However, the NFS client is
      still susceptible to the problem.  Out of order WRITE
      requests can occur when pdflush is in the middle of writing
      out pages while the process dirtying the pages calls
      generic_file_buffered_write which calls
      generic_perform_write which calls
      balance_dirty_pages_rate_limited which ends up calling
      writeback_inodes which ends up calling back into the NFS
      client to writes out dirty pages for the same file that
      pdflush happens to be working with.
      Signed-off-by: NPeter Staubach <staubach@redhat.com>
      [modification by Trond to merge the two similar patches]
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      72cb77f4
    • T
      fb8a1f11
  10. 24 12月, 2008 4 次提交
  11. 18 10月, 2008 1 次提交
  12. 15 10月, 2008 1 次提交
    • T
      NFS: Fix the resolution problem with nfs_inode_attrs_need_update() · 4704f0e2
      Trond Myklebust 提交于
      It appears that 'jiffies' timestamps do not have high enough resolution for
      nfs_inode_attrs_need_update(). One problem is that a GETATTR can be
      launched within < 1 jiffy of the last operation that updated the attribute.
      Another problem is that RPC calls can take < 1 jiffy to execute.
      
      We can fix this by switching the variables to use a simple global counter
      that gets incremented every time we start another GETATTR call.
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      4704f0e2
  13. 08 10月, 2008 1 次提交
  14. 27 7月, 2008 2 次提交
    • A
      [PATCH] get rid of indirect users of namei.h · 3f8206d4
      Al Viro 提交于
      fs.h needs path.h, not namei.h; nfs_fs.h doesn't need it at all.
      Several places in the tree needed direct include.
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      3f8206d4
    • A
      [PATCH] sanitize ->permission() prototype · e6305c43
      Al Viro 提交于
      * kill nameidata * argument; map the 3 bits in ->flags anybody cares
        about to new MAY_... ones and pass with the mask.
      * kill redundant gfs2_iop_permission()
      * sanitize ecryptfs_permission()
      * fix remaining places where ->permission() instances might barf on new
        MAY_... found in mask.
      
      The obvious next target in that direction is permission(9)
      
      folded fix for nfs_permission() breakage from Miklos Szeredi <mszeredi@suse.cz>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      e6305c43
  15. 10 7月, 2008 2 次提交
  16. 20 4月, 2008 2 次提交
  17. 08 3月, 2008 1 次提交
  18. 30 1月, 2008 3 次提交
  19. 07 12月, 2007 1 次提交
  20. 27 11月, 2007 1 次提交
  21. 20 10月, 2007 1 次提交
    • T
      NFS: Fix a race in sillyrename · 565277f6
      Trond Myklebust 提交于
      lookup() and sillyrename() can race one another because the sillyrename()
      completion cannot take the parent directory's inode->i_mutex since the
      latter may be held by whoever is calling dput().
      
      We therefore have little option but to add extra locking to ensure that
      nfs_lookup() and nfs_atomic_open() do not race with the sillyrename
      completion.
      If somebody has looked up the sillyrenamed file in the meantime, we just
      transfer the sillydelete information to the new dentry.
      
      Please refer to the bug-report at
      	http://bugzilla.linux-nfs.org/show_bug.cgi?id=150Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      565277f6
  22. 10 10月, 2007 3 次提交