Skip to content

Commit

Permalink
[patch] remove gendisk->stamp_idle field
Browse files Browse the repository at this point in the history
struct gendisk has these two fields: stamp, stamp_idle.  Update to
stamp_idle is always in sync with stamp and they are always the same.
Therefore, it does not add any value in having two fields tracking
same timestamp.  Suggest to remove it.

Also, we should only update gendisk stats with non-zero value.
Advantage is that we don't have to needlessly calculate memory address,
and then add zero to the content.

Signed-off-by: Ken Chen <kenneth.w.chen@intel.com>
Signed-off-by: Jens Axboe <axboe@suse.de>
  • Loading branch information
Chen, Kenneth W authored and Jens Axboe committed Oct 28, 2005
1 parent 741b225 commit 20e5c81
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 8 deletions.
11 changes: 5 additions & 6 deletions drivers/block/ll_rw_blk.c
Original file line number Diff line number Diff line change
Expand Up @@ -2433,13 +2433,12 @@ void disk_round_stats(struct gendisk *disk)
{
unsigned long now = jiffies;

__disk_stat_add(disk, time_in_queue,
disk->in_flight * (now - disk->stamp));
if (disk->in_flight) {
__disk_stat_add(disk, time_in_queue,
disk->in_flight * (now - disk->stamp));
__disk_stat_add(disk, io_ticks, (now - disk->stamp));
}
disk->stamp = now;

if (disk->in_flight)
__disk_stat_add(disk, io_ticks, (now - disk->stamp_idle));
disk->stamp_idle = now;
}

/*
Expand Down
2 changes: 1 addition & 1 deletion fs/partitions/check.c
Original file line number Diff line number Diff line change
Expand Up @@ -430,7 +430,7 @@ void del_gendisk(struct gendisk *disk)
disk->flags &= ~GENHD_FL_UP;
unlink_gendisk(disk);
disk_stat_set_all(disk, 0);
disk->stamp = disk->stamp_idle = 0;
disk->stamp = 0;

devfs_remove_disk(disk);

Expand Down
2 changes: 1 addition & 1 deletion include/linux/genhd.h
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ struct gendisk {
int policy;

atomic_t sync_io; /* RAID */
unsigned long stamp, stamp_idle;
unsigned long stamp;
int in_flight;
#ifdef CONFIG_SMP
struct disk_stats *dkstats;
Expand Down

0 comments on commit 20e5c81

Please sign in to comment.