1. 29 3月, 2009 4 次提交
    • H
      xfs: pagecache usage optimization · bddaafa1
      Hisashi Hifumi 提交于
      Hi.
      
      I introduced "is_partially_uptodate" aops for XFS.
      
      A page can have multiple buffers and even if a page is not uptodate,
      some buffers can be uptodate on pagesize != blocksize environment.
      
      This aops checks that all buffers which correspond to a part of a file
      that we want to read are uptodate. If so, we do not have to issue actual
      read IO to HDD even if a page is not uptodate because the portion we
      want to read are uptodate.
      
      "block_is_partially_uptodate" function is already used by ext2/3/4.
      With the following patch random read/write mixed workloads or random read
      after random write workloads can be optimized and we can get performance
      improvement.
      
      I did a performance test using the sysbench.
      
      #sysbench --num-threads=4 --max-requests=100000 --test=fileio --file-num=1 \
      --file-block-size=8K --file-total-size=1G --file-test-mode=rndrw \
      --file-fsync-freq=0 --file-rw-ratio=0.5 run
      
      -2.6.29-rc6
      Test execution summary:
          total time:                          123.8645s
          total number of events:              100000
          total time taken by event execution: 442.4994
          per-request statistics:
               min:                            0.0000s
               avg:                            0.0044s
               max:                            0.3387s
               approx.  95 percentile:         0.0118s
      
      -2.6.29-rc6-patched
      Test execution summary:
          total time:                          108.0757s
          total number of events:              100000
          total time taken by event execution: 417.7505
          per-request statistics:
               min:                            0.0000s
               avg:                            0.0042s
               max:                            0.3217s
               approx.  95 percentile:         0.0118s
      
      arch: ia64
      pagesize: 16k
      blocksize: 4k
      Signed-off-by: NHisashi Hifumi <hifumi.hisashi@oss.ntt.co.jp>
      Reviewed-by: NChristoph Hellwig <hch@lst.de>
      Reviewed-by: NFelix Blyakher <felixb@sgi.com>
      bddaafa1
    • C
      xfs: remove m_litino · 6447c362
      Christoph Hellwig 提交于
      With the upcoming v3 inodes the inode data/attr area size needs to be
      calculated for each specific inode, so we can't cache it in the superblock
      anymore.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Reviewed-by: NEric Sandeen <sandeen@sandeen.net>
      Reviewed-by: NFelix Blyakher <felixb@sgi.com>
      6447c362
    • C
      xfs: kill ino64 mount option · a19d9f88
      Christoph Hellwig 提交于
      The ino64 mount option adds a fixed offset to 32bit inode numbers
      to bring them into the 64bit range.  There's no need for this kind
      of debug tool given that it's easy to produce real 64bit inode numbers
      for testing.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Reviewed-by: NEric Sandeen <sandeen@sandeen.net>
      Reviewed-by: NFelix Blyakher <felixb@sgi.com>
      a19d9f88
    • C
      xfs: kill mutex_t typedef · a0b0b8a5
      Christoph Hellwig 提交于
      People continue to complain about this for weird reasons, but there's
      really no point in keeping this typedef for a couple of users anyway.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Reviewed-by: NEric Sandeen <sandeen@sandeen.net>
      Reviewed-by: NFelix Blyakher <felixb@sgi.com>
      a0b0b8a5
  2. 25 3月, 2009 1 次提交
  3. 24 3月, 2009 6 次提交
  4. 23 3月, 2009 11 次提交
  5. 22 3月, 2009 2 次提交
  6. 21 3月, 2009 2 次提交
  7. 20 3月, 2009 11 次提交
  8. 19 3月, 2009 3 次提交