1. 19 Apr, 2011 2 commits
    • Jens Axboe's avatar
      block: get rid of QUEUE_FLAG_REENTER · c21e6beb
      Jens Axboe authored
      We are currently using this flag to check whether it's safe
      to call into ->request_fn(). If it is set, we punt to kblockd.
      But we get a lot of false positives and excessive punts to
      kblockd, which hurts performance.
      
      The only real abuser of this infrastructure is SCSI. So export
      the async queue run and convert SCSI over to use that. There's
      room for improvement in that SCSI need not always use the async
      call, but this fixes our performance issue and they can fix that
      up in due time.
      Signed-off-by: default avatarJens Axboe <jaxboe@fusionio.com>
      c21e6beb
    • Jens Axboe's avatar
      cfq-iosched: read_lock() does not always imply rcu_read_lock() · 5f45c695
      Jens Axboe authored
      For some configurations of CONFIG_PREEMPT that is not true. So
      get rid of __call_for_each_cic() and always uses the explicitly
      rcu_read_lock() protected call_for_each_cic() instead.
      
      This fixes a potential bug related to IO scheduler removal or
      online switching.
      
      Thanks to Paul McKenney for clarifying this.
      Signed-off-by: default avatarJens Axboe <jaxboe@fusionio.com>
      5f45c695
  2. 18 Apr, 2011 14 commits
  3. 17 Apr, 2011 7 commits
  4. 16 Apr, 2011 8 commits
  5. 15 Apr, 2011 9 commits