Thread (5 messages) 5 messages, 3 authors, 2018-12-17

Re: [PATCH v3] block: fix blk-iolatency accounting underflow

From: Dennis Zhou <dennis@kernel.org>
Date: 2018-12-17 21:28:32
Also in: cgroups, lkml

On Mon, Dec 17, 2018 at 11:42:28AM -0800, Liu Bo wrote:
On Mon, Dec 17, 2018 at 8:04 AM Dennis Zhou [off-list ref] wrote:
quoted
The blk-iolatency controller measures the time from rq_qos_throttle() to
rq_qos_done_bio() and attributes this time to the first bio that needs
to create the request. This means if a bio is plug-mergeable or
bio-mergeable, it gets to bypass the blk-iolatency controller.
Hi,

I have a question about merging in plug list, since plug merges are
done before rq_qos_throttle(), why would plug-mergeable bios bypass
the controller?

thanks,
liubo
Hi Liubo,

BIO_TRACKED is tagging the bio that is responsible for allocating a new
request, so that rq_qos controllers can decide whether or not they want
to process the bio any part of the way. I should have phrased that a
little better in the commit message. It's not that the bio itself is
bypassing the blk-iolatency controller, but the blk-iolatency controller
deciding to not do anything based on the BIO_TRACKED flag. This doesn't
change any of the function calls made on a bio/request.

Thanks,
Dennis
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help