From: Andrew Morton <[EMAIL PROTECTED]>

Wire up read accounting for block devices, within submit_bio().

Cc: Jay Lan <[EMAIL PROTECTED]>
Cc: Shailabh Nagar <[EMAIL PROTECTED]>
Cc: Balbir Singh <[EMAIL PROTECTED]>
Cc: Chris Sturtivant <[EMAIL PROTECTED]>
Cc: Tony Ernst <[EMAIL PROTECTED]>
Cc: Guillaume Thouvenin <[EMAIL PROTECTED]>
Cc: David Wright <[EMAIL PROTECTED]>
Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
---

 block/ll_rw_blk.c |    7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff -puN block/ll_rw_blk.c~io-accounting-read-accounting-2 block/ll_rw_blk.c
--- a/block/ll_rw_blk.c~io-accounting-read-accounting-2
+++ a/block/ll_rw_blk.c
@@ -25,6 +25,7 @@
 #include <linux/slab.h>
 #include <linux/swap.h>
 #include <linux/writeback.h>
+#include <linux/task_io_accounting_ops.h>
 #include <linux/interrupt.h>
 #include <linux/cpu.h>
 #include <linux/blktrace_api.h>
@@ -3235,10 +3236,12 @@ void submit_bio(int rw, struct bio *bio)
        BIO_BUG_ON(!bio->bi_size);
        BIO_BUG_ON(!bio->bi_io_vec);
        bio->bi_rw |= rw;
-       if (rw & WRITE)
+       if (rw & WRITE) {
                count_vm_events(PGPGOUT, count);
-       else
+       } else {
+               task_io_account_read(bio->bi_size);
                count_vm_events(PGPGIN, count);
+       }
 
        if (unlikely(block_dump)) {
                char b[BDEVNAME_SIZE];
_
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to