diff options
-rw-r--r-- | include/linux/blk-mq.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/include/linux/blk-mq.h b/include/linux/blk-mq.h index 851d34b7ac26..161b23105b1e 100644 --- a/include/linux/blk-mq.h +++ b/include/linux/blk-mq.h | |||
@@ -158,16 +158,16 @@ static inline struct request *blk_mq_tag_to_rq(struct blk_mq_hw_ctx *hctx, | |||
158 | } | 158 | } |
159 | 159 | ||
160 | #define queue_for_each_hw_ctx(q, hctx, i) \ | 160 | #define queue_for_each_hw_ctx(q, hctx, i) \ |
161 | for ((i) = 0, hctx = (q)->queue_hw_ctx[0]; \ | 161 | for ((i) = 0; (i) < (q)->nr_hw_queues && \ |
162 | (i) < (q)->nr_hw_queues; (i)++, hctx = (q)->queue_hw_ctx[i]) | 162 | ({ hctx = (q)->queue_hw_ctx[i]; 1; }); (i)++) |
163 | 163 | ||
164 | #define queue_for_each_ctx(q, ctx, i) \ | 164 | #define queue_for_each_ctx(q, ctx, i) \ |
165 | for ((i) = 0, ctx = per_cpu_ptr((q)->queue_ctx, 0); \ | 165 | for ((i) = 0; (i) < (q)->nr_queues && \ |
166 | (i) < (q)->nr_queues; (i)++, ctx = per_cpu_ptr(q->queue_ctx, (i))) | 166 | ({ ctx = per_cpu_ptr((q)->queue_ctx, (i)); 1; }); (i)++) |
167 | 167 | ||
168 | #define hctx_for_each_ctx(hctx, ctx, i) \ | 168 | #define hctx_for_each_ctx(hctx, ctx, i) \ |
169 | for ((i) = 0, ctx = (hctx)->ctxs[0]; \ | 169 | for ((i) = 0; (i) < (hctx)->nr_ctx && \ |
170 | (i) < (hctx)->nr_ctx; (i)++, ctx = (hctx)->ctxs[(i)]) | 170 | ({ ctx = (hctx)->ctxs[(i)]; 1; }); (i)++) |
171 | 171 | ||
172 | #define blk_ctx_sum(q, sum) \ | 172 | #define blk_ctx_sum(q, sum) \ |
173 | ({ \ | 173 | ({ \ |