Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7276d02e authored by Jens Axboe's avatar Jens Axboe
Browse files

block: only calculate part_in_flight() once



We first check if we have inflight IO, then retrieve that
same number again. Usually this isn't that costly since the
chance of having the data dirtied in between is small, but
there's no reason for calling part_in_flight() twice.

Signed-off-by: default avatarJens Axboe <axboe@fb.com>
parent cf4b50af
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -1233,12 +1233,15 @@ static void add_acct_request(struct request_queue *q, struct request *rq,
static void part_round_stats_single(int cpu, struct hd_struct *part,
				    unsigned long now)
{
	int inflight;

	if (now == part->stamp)
		return;

	if (part_in_flight(part)) {
	inflight = part_in_flight(part);
	if (inflight) {
		__part_stat_add(cpu, part, time_in_queue,
				part_in_flight(part) * (now - part->stamp));
				inflight * (now - part->stamp));
		__part_stat_add(cpu, part, io_ticks, (now - part->stamp));
	}
	part->stamp = now;