| 44e8c2bff80b ("blk-mq: refactor blk_mq_sched_assign_ioc") |
| 037cebb85b94 ("blk-mq: streamline blk_mq_get_request") |
| ea511e3c28c8 ("blk-mq: remove blk_mq_sched_{get,put}_rq_priv") |
| d2c0d3832469 ("blk-mq: move blk_mq_sched_{get,put}_request to blk-mq.c") |
| 9f2779bff2f1 ("blk-mq-sched: remove hack that bypasses scheduler for reserved requests") |
| 339318080b02 ("blk-mq-sched: alloate reserved tags out of normal pool") |
| ee056f981261 ("blk-mq-sched: provide hooks for initializing hardware queue data") |
| 54d5329d4256 ("blk-mq-sched: fix crash in switch error path") |
| 93252632e828 ("blk-mq-sched: set up scheduler tags when bringing up new queues") |
| 6917ff0b5bd4 ("blk-mq-sched: refactor scheduler initialization") |
| 7b36a7189fc3 ("block: don't call ioc_exit_icq() with the queue lock held for blk-mq") |
| 562bef425977 ("blk-mq: move update of tags->rqs to __blk_mq_alloc_request()") |
| 6d2809d51a50 ("blk-mq: make blk_mq_alloc_request_hctx() allocate a scheduler request") |
| 415b806de557 ("blk-mq-sched: Allocate sched reserved tags as specified in the original queue tagset") |
| 3d492c2e0146 ("blk-mq-sched: don't hold queue_lock when calling exit_icq") |
| f1ba82616c33 ("blk-mq: pass bio to blk_mq_sched_get_rq_priv") |
| bd6737f1ae92 ("blk-mq-sched: add flush insertion into blk_mq_sched_insert_request()") |
| f73f44eb00cb ("block: add a op_is_flush helper") |
| 50e1dab86aa2 ("blk-mq-sched: fix starvation for multiple hardware queues and shared tags") |
| 0abad7741243 ("blk-mq: improve scheduler queue sync/async running") |
| b48fda0976a8 ("blk-mq-sched: check for successful allocation before assigning tag") |
| 5a797e00dc93 ("blk-mq: don't lose flags passed in to blk_mq_alloc_request()") |
| d34849913819 ("blk-mq-sched: allow setting of default IO scheduler") |
| bd166ef183c2 ("blk-mq-sched: add framework for MQ capable IO schedulers") |
| 2af8cbe30531 ("blk-mq: split tag ->rqs[] into two") |
| fd2d332677c6 ("blk-mq: add support for carrying internal tag information in blk_qc_t") |
| cc71a6f43886 ("blk-mq: abstract out helpers for allocating/freeing tag maps") |
| 4941115bef2b ("blk-mq-tag: cleanup the normal/reserved tag allocation") |
| 2c3ad667902e ("blk-mq: export some helpers we need to the scheduling framework") |
| 16a3c2a70cad ("blk-mq: un-export blk_mq_free_hctx_request()") |
| c51ca6cf545b ("block: move existing elevator ops to union") |
| d1b1cea1e584 ("blk-mq: Fix failed allocation path when mapping queues") |
| 36e1f3d10786 ("blk-mq: Avoid memory reclaim when remapping queues") |
| c8e52ba5e2d6 ("blk-flush: run the queue when inserting blk-mq flush") |
| f04c3df3efec ("blk-mq: abstract out blk_mq_dispatch_rq_list() helper") |
| 06426adf072b ("blk-mq: implement hybrid poll mode for sync O_DIRECT") |
| bbd7bb7017d5 ("block: move poll code to blk-mq") |
| 066a4a73cee9 ("blk-mq: blk_mq_try_issue_directly() should lookup hardware queue") |
| 87760e5eef35 ("block: hook up writeback throttling") |
| cf43e6be865a ("block: add scalable completion tracking of requests") |
| d278d4a8892f ("block: add code to track actual device queue depth") |
| 6a83e74d214a ("blk-mq: Introduce blk_mq_quiesce_queue()") |
| 2253efc850c4 ("blk-mq: Move more code into blk_mq_direct_issue_request()") |
| 5d1b25c1ecab ("blk-mq: Introduce blk_mq_hctx_stopped()") |
| bc27c01b5c46 ("blk-mq: Do not invoke .queue_rq() for a stopped queue") |
| b685d3d65ac7 ("block: treat REQ_FUA and REQ_PREFLUSH as synchronous") |
| 87374179c535 ("block: add a proper block layer data direction encoding") |
| ef295ecf090d ("block: better op and flags encoding") |
| e806402130c9 ("block: split out request-only flags into a new namespace") |
| 8d2bbd4c8236 ("block: replace REQ_THROTTLED with a bio flag") |