• Jens Axboe's avatar
    [PATCH] deadline ioscheduler cleanups · 82c8a4cc
    Jens Axboe authored
    Some various small cleanups, optimizations, and fixes.
    
    o Make fifo_batch=32 as default, from testing this appears a good
      default value. We still get good throughput, and latency is good.
    
    o Reintroduce the merge_cleanup logic. We need it for deadline for
      rehashing requests when they have been merged.
    
    o Cleanup last_merge logic. Move it to the new elv_merged_request(),
      this is where it really belongs. Doing it inside the io scheduler core
      can causes false positives, when the queue merge functions reject an
      otherwise good merge
    
    o Have deadline_move_requests() account from last entry on the dispatch
      queue, if it is non-empty. It doesn't really matter what the last
      extracted sector was, if we are not right behind it.
    
    o Clean/optimize deadline_move_requests()
    
    o Account size of a request just a little bit. Streaming transfer isn't
      for free, it's just a lot cheaper than a seek.
    
    o Make deadline_check_fifo() more readable.
    82c8a4cc
deadline-iosched.c 13.2 KB