struct gendisk *disk = d->gd;
const int rw = bio_data_dir(buf->bio);
- disk_stat_inc(disk, ios[rw]);
- disk_stat_add(disk, ticks[rw], duration);
- disk_stat_add(disk, sectors[rw], n_sect);
- disk_stat_add(disk, io_ticks, duration);
+ all_stat_inc(disk, ios[rw], buf->sector);
+ all_stat_add(disk, ticks[rw], duration, buf->sector);
+ all_stat_add(disk, sectors[rw], n_sect, buf->sector);
+ all_stat_add(disk, io_ticks, duration, buf->sector);
n = (buf->flags & BUFFL_FAIL) ? -EIO : 0;
bio_endio(buf->bio, n);
mempool_free(buf, d->bufpool);