]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - block/blk-sysfs.c
block: fix inconsistency in I/O stat accounting code
[linux-2.6-omap-h63xx.git] / block / blk-sysfs.c
index 3ff9bba3379a84891ddbc97450fcdbddf6e42a1a..73f36beff5cd58c85ca0111df6ea4061ab2d27c0 100644 (file)
@@ -209,10 +209,14 @@ static ssize_t queue_iostats_store(struct request_queue *q, const char *page,
        ssize_t ret = queue_var_store(&stats, page, count);
 
        spin_lock_irq(q->queue_lock);
+       elv_quisce_start(q);
+
        if (stats)
                queue_flag_set(QUEUE_FLAG_IO_STAT, q);
        else
                queue_flag_clear(QUEUE_FLAG_IO_STAT, q);
+
+       elv_quisce_end(q);
        spin_unlock_irq(q->queue_lock);
 
        return ret;