Re: [PATCH] block: simplify I/O stat accounting

Jens Axboe
2009-04-16T16:35:11Z

On Thu, Apr 16 2009, Jerome Marchand wrote:
>
> This simplifies I/O stat accounting switching code and separates it
> completely from I/O scheduler switch code.
>
> Requests are accounted according to the state of their request queue
> at the time of the request allocation. There is no need anymore to
> flush the request queue when switching I/O accounting state.

This is cleaner, I like it. I'll apply it, but I'm changing this one:

> @@ -792,9 +792,10 @@ static struct request *get_request(struct
> request_queue *q, int rw_flags,
> if (priv)
> rl->elvpriv++;
>
> + iostat = blk_queue_io_stat(q) ? REQ_IO_STAT : 0;
> spin_unlock_irq(q->queue_lock);

to a regular if, I hate these ?: constructs. An if is much more
readable, imho.

--
Jens Axboe