arm64: dts: qcom: sm6125-pdx201: correct ramoops pmsg-size
[platform/kernel/linux-starfive.git] / block / blk-stat.c
index 2ea01b5..da9407b 100644 (file)
@@ -189,7 +189,7 @@ void blk_stat_disable_accounting(struct request_queue *q)
        unsigned long flags;
 
        spin_lock_irqsave(&q->stats->lock, flags);
-       if (!--q->stats->accounting)
+       if (!--q->stats->accounting && list_empty(&q->stats->callbacks))
                blk_queue_flag_clear(QUEUE_FLAG_STATS, q);
        spin_unlock_irqrestore(&q->stats->lock, flags);
 }
@@ -200,7 +200,7 @@ void blk_stat_enable_accounting(struct request_queue *q)
        unsigned long flags;
 
        spin_lock_irqsave(&q->stats->lock, flags);
-       if (!q->stats->accounting++)
+       if (!q->stats->accounting++ && list_empty(&q->stats->callbacks))
                blk_queue_flag_set(QUEUE_FLAG_STATS, q);
        spin_unlock_irqrestore(&q->stats->lock, flags);
 }