Hi Jens, The 1st patch removes the RESTART for TAG-SHARED because SCSI handles it by itself, and not necessary to waste CPU to do the expensive RESTART. And Roman Pen reported that this RESTART cuts half of IOPS in his case. The 2nd patch removes the RESTART when .get_budget returns BLK_STS_RESOURCE, and this RESTART is handled by SCSI's RESTART(scsi_end_request()) too. Ming Lei (2): blk-mq: don't handle TAG_SHARED in restart blk-mq: don't restart queue when .get_budget returns BLK_STS_RESOURCE block/blk-mq-sched.c | 123 ++++----------------------------------------- block/blk-mq-sched.h | 2 +- block/blk-mq.c | 8 +--- 3 files changed, 27 insertions(+), 106 deletions(-) -- 2.9.5