On Thu, 2017-03-30 at 09:27 -0600, Jens Axboe wrote: > On 03/29/2017 03:32 PM, Bart Van Assche wrote: > > Make it possible to check whether or not a block layer queue has > > been stopped. Make it possible to start and to run a blk-mq queue > > from user space. > > Looks good, minor nitpicking below. > > > +static int blk_queue_flags_show(struct seq_file *m, void *v) > > +{ > > + struct request_queue *q = m->private; > > + bool sep = false; > > + int i; > > + > > + for (i = 0; i < sizeof(q->queue_flags) * BITS_PER_BYTE; i++) { > > + if (!(q->queue_flags & BIT(i))) > > + continue; > > + if (sep) > > + seq_puts(m, " "); > > + sep = true; > > Put that sep = true in the else branch? I can do that, but that would result in slightly less efficient assembler code (additional jump) while stores can be pipelined easily. > > + if (strcmp(op, "run") == 0) { > > + blk_mq_run_hw_queues(q, true); > > + } else if (strcmp(op, "start") == 0) { > > + blk_mq_start_stopped_hw_queues(q, true); > > + } else { > > + pr_err("%s: unsupported operation %s\n", __func__, op); > > + return -EINVAL; > > + } > > You are inconsistent with your braces. I'd prefer no braces for single > lines. Sorry but if braces are used for one side of an if-then-else statement then checkpatch wants braces to be used for the other side too, even if that other side is only a single line. From the checkpatch source code: # check for single line unbalanced braces if ($sline =~ /^.\s*\}\s*else\s*$/ || $sline =~ /^.\s*else\s*\{\s*$/) { CHK("BRACES", "Unbalanced braces around else statement\n" . $herecurr); } > Should the error case include valid commands? It'd be nice to have this > available, and not have to resort to looking at the source to figure out > what commands are available. OK, I will update the error message. Thanks for the review. Bart.