Message ID | 20180113110518.2519-1-paolo.valente@linaro.org |
---|---|
Headers | show |
Series | block, bfq: two pending patches | expand |
Hi. 13.01.2018 12:05, Paolo Valente wrote: > Hi Jens, > here are again the two pending patches you asked me to resend [1]. One > of them, fixing read-starvation problems, was accompanied by a cover > letter. I'm pasting the content of that cover letter below. > > The patch addresses (serious) starvation problems caused by > request-tag exhaustion, as explained in more detail in the commit > message. I started from the solution in the function > kyber_limit_depth, but then I had to define more articulate limits, to > counter starvation also in cases not covered in kyber_limit_depth. > If this solution proves to be effective, I'm willing to port it > somehow to the other schedulers. > > Thanks, > Paolo > > [1] https://www.spinics.net/lists/linux-block/msg21586.html > > Paolo Valente (2): > block, bfq: limit tags for writes and async I/O > block, bfq: limit sectors served with interactive weight raising > > block/bfq-iosched.c | 158 > +++++++++++++++++++++++++++++++++++++++++++++++++--- > block/bfq-iosched.h | 17 ++++++ > block/bfq-wf2q.c | 3 + > 3 files changed, 169 insertions(+), 9 deletions(-) > > -- > 2.15.1 I'm running the system with these patches since the end of December, so with regard to stability and visible smoke: Tested-by: Oleksandr Natalenko <oleksandr@natalenko.name> for both of them. Many thanks, Paolo!
> Il giorno 13 gen 2018, alle ore 12:05, Paolo Valente <paolo.valente@linaro.org> ha scritto: > > Hi Jens, > here are again the two pending patches you asked me to resend [1]. One > of them, fixing read-starvation problems, was accompanied by a cover > letter. I'm pasting the content of that cover letter below. > > The patch addresses (serious) starvation problems caused by > request-tag exhaustion, as explained in more detail in the commit > message. I started from the solution in the function > kyber_limit_depth, but then I had to define more articulate limits, to > counter starvation also in cases not covered in kyber_limit_depth. > If this solution proves to be effective, I'm willing to port it > somehow to the other schedulers. > Hi Jens, have had to time to check these patches? Sorry for pushing, but I guess 4.16 is getting closer, and these patches are performance critical; especially the first, which solves a starvation problem. Thanks, Paolo > Thanks, > Paolo > > [1] https://www.spinics.net/lists/linux-block/msg21586.html > > Paolo Valente (2): > block, bfq: limit tags for writes and async I/O > block, bfq: limit sectors served with interactive weight raising > > block/bfq-iosched.c | 158 +++++++++++++++++++++++++++++++++++++++++++++++++--- > block/bfq-iosched.h | 17 ++++++ > block/bfq-wf2q.c | 3 + > 3 files changed, 169 insertions(+), 9 deletions(-) > > -- > 2.15.1
On 1/13/18 4:05 AM, Paolo Valente wrote: > Hi Jens, > here are again the two pending patches you asked me to resend [1]. One > of them, fixing read-starvation problems, was accompanied by a cover > letter. I'm pasting the content of that cover letter below. > > The patch addresses (serious) starvation problems caused by > request-tag exhaustion, as explained in more detail in the commit > message. I started from the solution in the function > kyber_limit_depth, but then I had to define more articulate limits, to > counter starvation also in cases not covered in kyber_limit_depth. > If this solution proves to be effective, I'm willing to port it > somehow to the other schedulers. It's something we've been doing in the old request layer for tagging for a long time (more than a decade), so a generic (and fast) solution that covers all cases for blk-mq-tag would indeed be great. For now, I have applied these for 4.16, thanks. -- Jens Axboe