1. 20 10月, 2021 16 次提交
  2. 19 10月, 2021 22 次提交
  3. 18 10月, 2021 2 次提交
    • J
      block: store elevator state in request · 2ff0682d
      Jens Axboe 提交于
      Add an rq private RQF_ELV flag, which tells the block layer that this
      request was initialized on a queue that has an IO scheduler attached.
      This allows for faster checking in the fast path, rather than having to
      deference rq->q later on.
      
      Elevator switching does full quiesce of the queue before detaching an
      IO scheduler, so it's safe to cache this in the request itself.
      Signed-off-by: NJens Axboe <axboe@kernel.dk>
      2ff0682d
    • J
      block: only mark bio as tracked if it really is tracked · 90b8faa0
      Jens Axboe 提交于
      We set BIO_TRACKED unconditionally when rq_qos_throttle() is called, even
      though we may not even have an rq_qos handler. Only mark it as TRACKED if
      it really is potentially tracked.
      
      This saves considerable time for the case where the bio isn't tracked:
      
           2.64%     -1.65%  [kernel.vmlinux]  [k] bio_endio
      Reviewed-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NJens Axboe <axboe@kernel.dk>
      90b8faa0