diff options
| author | Ming Lei <ming.lei@redhat.com> | 2024-11-27 16:51:30 +0300 |
|---|---|---|
| committer | Jens Axboe <axboe@kernel.dk> | 2024-12-23 18:17:22 +0300 |
| commit | f6661b1d0525f3764596a1b65eeed9e75aecafa7 (patch) | |
| tree | 9b75effee32676156f10afdba5b7c214724a9d0a /include/linux/blkdev.h | |
| parent | b9d4eee7e04b9cfb0b4bcd748fe6b3ec517171d9 (diff) | |
| download | linux-f6661b1d0525f3764596a1b65eeed9e75aecafa7.tar.xz | |
block: track queue dying 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 queue lying state when
we want to lock the freeze queue since the state is one per-task variable
now.
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Link: https://lore.kernel.org/r/20241127135133.3952153-5-ming.lei@redhat.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include/linux/blkdev.h')
| -rw-r--r-- | include/linux/blkdev.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h index 522cf8eef66c..5d40af2ef971 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h @@ -581,8 +581,12 @@ struct request_queue { #ifdef CONFIG_LOCKDEP struct task_struct *mq_freeze_owner; int mq_freeze_owner_depth; - /* Records disk state in current context, used in unfreeze queue */ + /* + * Records disk & queue state in current context, used in unfreeze + * queue + */ bool mq_freeze_disk_dead; + bool mq_freeze_queue_dying; #endif wait_queue_head_t mq_freeze_wq; /* |
