Changes in v2: - add reviewed-by tag for patch 1 - use WRITE_ONCE() for updating of 'bfqd->queued' in patch 2 This patchset try to make bfq_has_work() more accurate, patch 1 is a small problem found by code review. BTW, I not sure why blk_mq_run_hw_queues() is called with 'bfqd->lock' held, I think this is not necessary. And bfq_has_work() can be more accurate by reading 'bfqd->queued' with 'bfqd->lock' held after patch 2. Previous versions: v1: https://lore.kernel.org/all/20220510131629.1964415-1-yukuai3@xxxxxxxxxx/ Yu Kuai (2): block, bfq: protect 'bfqd->queued' by 'bfqd->lock' block, bfq: make bfq_has_work() more accurate block/bfq-iosched.c | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) -- 2.31.1