Re: [PATCH IMPROVEMENT/BUGFIX 0/4] remove start-up time outlier caused by wrong detection of cooperating processes

From: Jens Axboe
Date: Fri Jan 05 2018 - 11:28:35 EST


On 12/20/17 4:38 AM, Paolo Valente wrote:
> Hi,
> the main patch in this series ("block, bfq: let a queue be merged only
> shortly after starting I/O") eliminates an outlier in the application
> start-up time guaranteed by BFQ. This outlier occurs more or less
> frequently, as a function of the characteristics of the system, and is
> caused by a wrong detection of so-called cooperating processes
> (details in the commit message). This main patch is preceded by two
> patches that fix two bugs found while working on this problem. The
> patch is then followed by a further, optimization patch, that removes
> an operation made superfluous by the main patch.
>
> Jens, I've not forgotten our decision to make a patch that enables
> blkio stats (related to proportional-share policy) to not be enabled
> at boot, or when CFQ or BFQ modules are loaded. Just, we have already
> prepared the present patches, plus a few other patches for improving
> BFQ and fixing bugs, and I'd like to clear this backlog first.
>
> In this respect, after a patch for boosting throughput more reliably
> with cooperating processes, I'll send out a patch to solve an
> important read starvation problem. If I'm not making a blunder, this
> problem affects every I/O scheduler in blk-mq. As a first step, I'll
> propose a fix for BFQ. If the fix is ok, I'm willing to port it to the
> other schedulers.

Added for 4.16, thanks.

--
Jens Axboe