blk_throtl_init() can be called with rq_qos_mutex held from blkcg configuration, hence trigger fs reclaim can cause deadlock because rq_qos_mutex can be held with queue frozen. Signed-off-by: Yu Kuai --- block/blk-throttle.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/block/blk-throttle.c b/block/blk-throttle.c index 97188a795848..5530a9bb0620 100644 --- a/block/blk-throttle.c +++ b/block/blk-throttle.c @@ -1313,7 +1313,7 @@ static int blk_throtl_init(struct gendisk *disk) unsigned int memflags; int ret; - td = kzalloc_node(sizeof(*td), GFP_KERNEL, q->node); + td = kzalloc_node(sizeof(*td), GFP_NOIO, q->node); if (!td) return -ENOMEM; -- 2.51.0