1. 17 8月, 2009 1 次提交
    • C
      xfs: fix locking in xfs_iget_cache_hit · bc990f5c
      Christoph Hellwig 提交于
      The locking in xfs_iget_cache_hit currently has numerous problems:
      
       - we clear the reclaim tag without i_flags_lock which protects
         modifications to it
       - we call inode_init_always which can sleep with pag_ici_lock
         held (this is oss.sgi.com BZ #819)
       - we acquire and drop i_flags_lock a lot and thus provide no
         consistency between the various flags we set/clear under it
      
      This patch fixes all that with a major revamp of the locking in
      the function.  The new version acquires i_flags_lock early and
      only drops it once we need to call into inode_init_always or before
      calling xfs_ilock.
      
      This patch fixes a bug seen in the wild where we race modifying the
      reclaim tag.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Reviewed-by: NFelix Blyakher <felixb@sgi.com>
      Reviewed-by: NEric Sandeen <sandeen@sandeen.net>
      Signed-off-by: NFelix Blyakher <felixb@sgi.com>
      bc990f5c
  2. 12 8月, 2009 12 次提交
  3. 08 8月, 2009 2 次提交
  4. 31 7月, 2009 2 次提交
  5. 13 7月, 2009 1 次提交
  6. 11 7月, 2009 1 次提交
  7. 24 6月, 2009 1 次提交
  8. 19 6月, 2009 1 次提交
  9. 13 6月, 2009 2 次提交
  10. 12 6月, 2009 2 次提交
  11. 10 6月, 2009 1 次提交
  12. 08 6月, 2009 12 次提交
  13. 02 6月, 2009 2 次提交