http://lkml.org/lkml/2008/7/14/68
Move stats related fields - stamp, in_flight, dkstats - from disk to
part0 and unify stat handling such that...
* part_stat_*() now updates part0 together if the specified partition
is not part0. ie. part_stat_*() are now essentially all_stat_*().
* {disk|all}_stat_*() are gone.
* part_round_stats() is updated similary. It handles part0 stats
automatically and disk_round_stats() is killed.
* part_{inc|dec}_in_fligh() is implemented which automatically updates
part0 stats for parts other than part0.
* disk_map_sector_rcu() is updated to return part0 if no part matches.
Combined with the above changes, this makes NULL special case
handling in callers unnecessary.
* Separate stats show code paths for disk are collapsed into part
stats show code paths.
Signed-off-by: Tejun Heo <[EMAIL PROTECTED]>
---
block/blk-core.c | 79 ++++++++----------------
block/blk-merge.c | 8 +--
block/genhd.c | 90 ++++++--------------------
drivers/block/aoe/aoecmd.c | 8 +-
drivers/md/dm.c | 15 +++--
drivers/md/linear.c | 4 +-
drivers/md/md.c | 4 +-
drivers/md/multipath.c | 4 +-
drivers/md/raid0.c | 4 +-
drivers/md/raid1.c | 4 +-
drivers/md/raid10.c | 4 +-
drivers/md/raid5.c | 4 +-
fs/partitions/check.c | 8 +-
include/linux/genhd.h | 150 ++++++++++++-------------------------------
14 files changed, 121 insertions(+), 265 deletions(-)
diff --git a/block/blk-core.c b/block/blk-core.c
index 332d695..d4186f3 100644
--- a/block/blk-core.c
+++ b/block/blk-core.c
@@ -64,14 +64,10 @@ static void drive_stat_acct(struct request *rq, int new_io)
|