From: Bart Van Assche Date: Thu, 1 Jun 2017 15:55:13 +0000 (-0700) Subject: blk-mq-debugfs: Add 'kick' operation X-Git-Tag: v4.13-rc1~70^2~97 X-Git-Url: https://git.kernelconcepts.de/?a=commitdiff_plain;h=edea55abb86ff67afda96120d6254290e7a75d9e;p=karo-tx-linux.git blk-mq-debugfs: Add 'kick' operation 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 Reviewed-by: Ming Lei Reviewed-by: Eduardo Valentin Cc: Christoph Hellwig Cc: Hannes Reinecke Cc: Omar Sandoval Signed-off-by: Jens Axboe --- diff --git a/block/blk-mq-debugfs.c b/block/blk-mq-debugfs.c index 90c454bbaf92..9edebbdce0bd 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;