Commit 18d78171 authored by Ming Lei's avatar Ming Lei Committed by Jens Axboe
Browse files

blk-mq: check q->poll_stat in queue_poll_stat_show



Without checking q->poll_stat in queue_poll_stat_show(), kernel panic
may be caused if q->poll_stat isn't allocated.

Fixes: 48b5c1fb ("block: only allocate poll_stats if there's a user of them")
Signed-off-by: default avatarMing Lei <ming.lei@redhat.com>
Link: https://lore.kernel.org/r/20211202090716.3292244-1-ming.lei@redhat.com


Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 8a751893
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -30,6 +30,9 @@ static int queue_poll_stat_show(void *data, struct seq_file *m)
	struct request_queue *q = data;
	int bucket;

	if (!q->poll_stat)
		return 0;

	for (bucket = 0; bucket < (BLK_MQ_POLL_STATS_BKTS / 2); bucket++) {
		seq_printf(m, "read  (%d Bytes): ", 1 << (9 + bucket));
		print_stat(m, &q->poll_stat[2 * bucket]);