From: Philipp Reisner Date: Thu, 23 Feb 2012 11:56:26 +0000 (+0100) Subject: drbd: add missing part_round_stats to _drbd_start_io_acct X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=72585d2428fa3a0daab02ebad1f41e5ef517dbaa;p=deliverable%2Flinux.git drbd: add missing part_round_stats to _drbd_start_io_acct Without this, iostat frequently sees bogus svctime and >= 100% "utilization". Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg --- diff --git a/drivers/block/drbd/drbd_req.c b/drivers/block/drbd/drbd_req.c index 4737ad1f94bb..bfd14bc9693d 100644 --- a/drivers/block/drbd/drbd_req.c +++ b/drivers/block/drbd/drbd_req.c @@ -39,6 +39,7 @@ static void _drbd_start_io_acct(struct drbd_conf *mdev, struct drbd_request *req const int rw = bio_data_dir(bio); int cpu; cpu = part_stat_lock(); + part_round_stats(cpu, &mdev->vdisk->part0); part_stat_inc(cpu, &mdev->vdisk->part0, ios[rw]); part_stat_add(cpu, &mdev->vdisk->part0, sectors[rw], bio_sectors(bio)); (void) cpu; /* The macro invocations above want the cpu argument, I do not like