1. 01 3月, 2010 2 次提交
    • C
      cfq-iosched: rework seeky detection · 3dde36dd
      Corrado Zoccolo 提交于
      Current seeky detection is based on average seek lenght.
      This is suboptimal, since the average will not distinguish between:
      * a process doing medium sized seeks
      * a process doing some sequential requests interleaved with larger seeks
      and even a medium seek can take lot of time, if the requested sector
      happens to be behind the disk head in the rotation (50% probability).
      
      Therefore, we change the seeky queue detection to work as follows:
      * each request can be classified as sequential if it is very close to
        the current head position, i.e. it is likely in the disk cache (disks
        usually read more data than requested, and put it in cache for
        subsequent reads). Otherwise, the request is classified as seeky.
      * an history window of the last 32 requests is kept, storing the
        classification result.
      * A queue is marked as seeky if more than 1/8 of the last 32 requests
        were seeky.
      
      This patch fixes a regression reported by Yanmin, on mmap 64k random
      reads.
      Reported-by: NYanmin Zhang <yanmin_zhang@linux.intel.com>
      Signed-off-by: NCorrado Zoccolo <czoccolo@gmail.com>
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      3dde36dd
    • J
      Merge branch 'for-2.6.34-next' into for-2.6.34 · 6fc2de06
      Jens Axboe 提交于
      6fc2de06
  2. 26 2月, 2010 7 次提交
  3. 25 2月, 2010 6 次提交
  4. 24 2月, 2010 10 次提交
  5. 23 2月, 2010 15 次提交