On Wed, 2017-01-25 at 08:06 -0800, Omar Sandoval wrote: > +static void *hctx_dispatch_start(struct seq_file *m, loff_t *pos) > +{ > + struct blk_mq_hw_ctx *hctx = m->private; > + > + spin_lock(&hctx->lock); > + return seq_list_start(&hctx->dispatch, *pos); > +} > [ ... ] > +static void hctx_dispatch_stop(struct seq_file *m, void *v) > +{ > + struct blk_mq_hw_ctx *hctx = m->private; > + > + spin_unlock(&hctx->lock); > +} > [ ... ] > +static void *ctx_rq_list_start(struct seq_file *m, loff_t *pos) > +{ > + struct blk_mq_ctx *ctx = m->private; > + > + spin_lock(&ctx->lock); > + return seq_list_start(&ctx->rq_list, *pos); > +} > [ ... ] > +static void ctx_rq_list_stop(struct seq_file *m, void *v) > +{ > + struct blk_mq_ctx *ctx = m->private; > + > + spin_unlock(&ctx->lock); > +} Please add __acquires() / __releases() annotations to these functions as appropriate to keep sparse happy. Thanks, Bart.-- To unsubscribe from this list: send the line "unsubscribe linux-block" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html