Loading block/blk-mq.c +2 −2 Original line number Original line Diff line number Diff line Loading @@ -700,7 +700,7 @@ void blk_mq_start_hw_queue(struct blk_mq_hw_ctx *hctx) } } EXPORT_SYMBOL(blk_mq_start_hw_queue); EXPORT_SYMBOL(blk_mq_start_hw_queue); void blk_mq_start_stopped_hw_queues(struct request_queue *q) void blk_mq_start_stopped_hw_queues(struct request_queue *q, bool async) { { struct blk_mq_hw_ctx *hctx; struct blk_mq_hw_ctx *hctx; int i; int i; Loading @@ -711,7 +711,7 @@ void blk_mq_start_stopped_hw_queues(struct request_queue *q) clear_bit(BLK_MQ_S_STOPPED, &hctx->state); clear_bit(BLK_MQ_S_STOPPED, &hctx->state); preempt_disable(); preempt_disable(); blk_mq_run_hw_queue(hctx, true); blk_mq_run_hw_queue(hctx, async); preempt_enable(); preempt_enable(); } } } } Loading drivers/block/virtio_blk.c +2 −2 Original line number Original line Diff line number Diff line Loading @@ -151,7 +151,7 @@ static void virtblk_done(struct virtqueue *vq) /* In case queue is stopped waiting for more buffers. */ /* In case queue is stopped waiting for more buffers. */ if (req_done) if (req_done) blk_mq_start_stopped_hw_queues(vblk->disk->queue); blk_mq_start_stopped_hw_queues(vblk->disk->queue, true); } } static int virtio_queue_rq(struct blk_mq_hw_ctx *hctx, struct request *req) static int virtio_queue_rq(struct blk_mq_hw_ctx *hctx, struct request *req) Loading Loading @@ -762,7 +762,7 @@ static int virtblk_restore(struct virtio_device *vdev) vblk->config_enable = true; vblk->config_enable = true; ret = init_vq(vdev->priv); ret = init_vq(vdev->priv); if (!ret) if (!ret) blk_mq_start_stopped_hw_queues(vblk->disk->queue); blk_mq_start_stopped_hw_queues(vblk->disk->queue, true); return ret; return ret; } } Loading include/linux/blk-mq.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -157,7 +157,7 @@ void blk_mq_complete_request(struct request *rq); void blk_mq_stop_hw_queue(struct blk_mq_hw_ctx *hctx); void blk_mq_stop_hw_queue(struct blk_mq_hw_ctx *hctx); void blk_mq_start_hw_queue(struct blk_mq_hw_ctx *hctx); void blk_mq_start_hw_queue(struct blk_mq_hw_ctx *hctx); void blk_mq_stop_hw_queues(struct request_queue *q); void blk_mq_stop_hw_queues(struct request_queue *q); void blk_mq_start_stopped_hw_queues(struct request_queue *q); void blk_mq_start_stopped_hw_queues(struct request_queue *q, bool async); /* /* * Driver command data is immediately after the request. So subtract request * Driver command data is immediately after the request. So subtract request Loading Loading
block/blk-mq.c +2 −2 Original line number Original line Diff line number Diff line Loading @@ -700,7 +700,7 @@ void blk_mq_start_hw_queue(struct blk_mq_hw_ctx *hctx) } } EXPORT_SYMBOL(blk_mq_start_hw_queue); EXPORT_SYMBOL(blk_mq_start_hw_queue); void blk_mq_start_stopped_hw_queues(struct request_queue *q) void blk_mq_start_stopped_hw_queues(struct request_queue *q, bool async) { { struct blk_mq_hw_ctx *hctx; struct blk_mq_hw_ctx *hctx; int i; int i; Loading @@ -711,7 +711,7 @@ void blk_mq_start_stopped_hw_queues(struct request_queue *q) clear_bit(BLK_MQ_S_STOPPED, &hctx->state); clear_bit(BLK_MQ_S_STOPPED, &hctx->state); preempt_disable(); preempt_disable(); blk_mq_run_hw_queue(hctx, true); blk_mq_run_hw_queue(hctx, async); preempt_enable(); preempt_enable(); } } } } Loading
drivers/block/virtio_blk.c +2 −2 Original line number Original line Diff line number Diff line Loading @@ -151,7 +151,7 @@ static void virtblk_done(struct virtqueue *vq) /* In case queue is stopped waiting for more buffers. */ /* In case queue is stopped waiting for more buffers. */ if (req_done) if (req_done) blk_mq_start_stopped_hw_queues(vblk->disk->queue); blk_mq_start_stopped_hw_queues(vblk->disk->queue, true); } } static int virtio_queue_rq(struct blk_mq_hw_ctx *hctx, struct request *req) static int virtio_queue_rq(struct blk_mq_hw_ctx *hctx, struct request *req) Loading Loading @@ -762,7 +762,7 @@ static int virtblk_restore(struct virtio_device *vdev) vblk->config_enable = true; vblk->config_enable = true; ret = init_vq(vdev->priv); ret = init_vq(vdev->priv); if (!ret) if (!ret) blk_mq_start_stopped_hw_queues(vblk->disk->queue); blk_mq_start_stopped_hw_queues(vblk->disk->queue, true); return ret; return ret; } } Loading
include/linux/blk-mq.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -157,7 +157,7 @@ void blk_mq_complete_request(struct request *rq); void blk_mq_stop_hw_queue(struct blk_mq_hw_ctx *hctx); void blk_mq_stop_hw_queue(struct blk_mq_hw_ctx *hctx); void blk_mq_start_hw_queue(struct blk_mq_hw_ctx *hctx); void blk_mq_start_hw_queue(struct blk_mq_hw_ctx *hctx); void blk_mq_stop_hw_queues(struct request_queue *q); void blk_mq_stop_hw_queues(struct request_queue *q); void blk_mq_start_stopped_hw_queues(struct request_queue *q); void blk_mq_start_stopped_hw_queues(struct request_queue *q, bool async); /* /* * Driver command data is immediately after the request. So subtract request * Driver command data is immediately after the request. So subtract request Loading