Re: [PATCH 2/2] block: account iowait time when waiting forcompletion of IO request

From: Jens Axboe
Date: Fri Feb 15 2013 - 10:45:52 EST


On Thu, Feb 14 2013, Vladimir Davydov wrote:
> Using wait_for_completion() for waiting for a IO request to be executed
> results in wrong iowait time accounting. For example, a system having
> the only task doing write() and fdatasync() on a block device can be
> reported being idle instead of iowaiting as it should because
> blkdev_issue_flush() calls wait_for_completion() which in turn calls
> schedule() that does not increment the iowait proc counter and thus does
> not turn on iowait time accounting.
>
> The patch makes block layer use wait_for_completion_io() instead of
> wait_for_completion() where appropriate to account iowait time
> correctly.

Thanks, applied both for 3.9 (with Ingos ack).

--
Jens Axboe

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/