On Wed, May 31, 2017 at 02:30:50PM -0700, Bart Van Assche wrote:
> Running a queue causes the block layer to examine the per-CPU and
> hw queues but not the requeue list. Hence add a 'kick' operation
> that also examines the requeue list.
> 
> Signed-off-by: Bart Van Assche <[email protected]>
> Cc: Christoph Hellwig <[email protected]>
> Cc: Hannes Reinecke <[email protected]>
> Cc: Omar Sandoval <[email protected]>
> Cc: Ming Lei <[email protected]>
> ---
>  block/blk-mq-debugfs.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/block/blk-mq-debugfs.c b/block/blk-mq-debugfs.c
> index fa0f624dfccd..962c8417809d 100644
> --- a/block/blk-mq-debugfs.c
> +++ b/block/blk-mq-debugfs.c
> @@ -114,10 +114,12 @@ static ssize_t queue_state_write(void *data, const char 
> __user *buf,
>               blk_mq_run_hw_queues(q, true);
>       } else if (strcmp(op, "start") == 0) {
>               blk_mq_start_stopped_hw_queues(q, true);
> +     } else if (strcmp(op, "kick") == 0) {
> +             blk_mq_kick_requeue_list(q);
>       } else {
>               pr_err("%s: unsupported operation '%s'\n", __func__, op);
>  inval:
> -             pr_err("%s: use either 'run' or 'start'\n", __func__);
> +             pr_err("%s: use 'run', 'start' or 'kick'\n", __func__);
>               return -EINVAL;
>       }
>       return count;
> -- 
> 2.12.2

Reviewed-by: Ming Lei <[email protected]>

Thanks,
Ming

Reply via email to