]> www.infradead.org Git - users/hch/misc.git/commit
block: track disk DEAD state automatically for modeling queue freeze lockdep
authorMing Lei <ming.lei@redhat.com>
Wed, 27 Nov 2024 13:51:28 +0000 (21:51 +0800)
committerJens Axboe <axboe@kernel.dk>
Mon, 16 Dec 2024 13:58:30 +0000 (06:58 -0700)
commitb06cdcda0c685c1b9e046d31214eb9c80e4dcc9e
treec85fa6bfb598351939462a191a45ef465f1e4415
parente19422d1e4ed6a49cd14ac8625145ce564c8216f
block: track disk DEAD state automatically for modeling queue freeze lockdep

Now we only verify the outmost freeze & unfreeze in current context in case
that !q->mq_freeze_depth, so it is reliable to save disk DEAD state when
we want to lock the freeze queue since the state is one per-task variable
now.

Doing this way can kill lots of false positive when freeze queue is
called before adding disk[1].

[1] https://lore.kernel.org/linux-block/6741f6b2.050a0220.1cc393.0017.GAE@google.com/

Signed-off-by: Ming Lei <ming.lei@redhat.com>
Link: https://lore.kernel.org/r/20241127135133.3952153-3-ming.lei@redhat.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/blk-mq.c
block/blk.h
block/elevator.c
block/genhd.c
include/linux/blkdev.h