The callee: blk_mq_flush_plug_list already has an empty list check for plug->mq_list. Hence, removed the check for empty list from the caller. Signed-off-by: Pankaj Raghav <p.raghav@xxxxxxxxxxx> --- block/blk-core.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/block/blk-core.c b/block/blk-core.c index 9b8c70670190..db28e2261825 100644 --- a/block/blk-core.c +++ b/block/blk-core.c @@ -1724,8 +1724,8 @@ void blk_flush_plug_list(struct blk_plug *plug, bool from_schedule) { flush_plug_callbacks(plug, from_schedule); - if (!list_empty(&plug->mq_list)) - blk_mq_flush_plug_list(plug, from_schedule); + blk_mq_flush_plug_list(plug, from_schedule); + if (unlikely(!from_schedule && plug->cached_rq)) blk_mq_free_plug_rqs(plug); } -- 2.25.1