mbox series

[BUGFIX,RESEND,0/4] bfq: fix bugs breaking bandwidth guarantees occasionally

Message ID 20180625195537.7769-1-paolo.valente@linaro.org
Headers show
Series bfq: fix bugs breaking bandwidth guarantees occasionally | expand

Message

Paolo Valente June 25, 2018, 7:55 p.m. UTC
Hi,
during some bandwidth tests, I found some occasional but severe
malfunctions (losses of bandwidth control). The first three patches in
this series fix the bugs that caused these malfunctions. The last
patch is a fix/improvement of the name of one of the functions
involved with these bugs.

I guess these patches are appropriate for next kernel release.

Thanks,
Paolo

Paolo Valente (4):
  block, bfq: add/remove entity weights correctly
  block, bfq: do not expire a queue that will deserve dispatch plugging
  block, bfq: fix service being wrongly set to zero in case of
    preemption
  block, bfq: give a better name to bfq_bfqq_may_idle

 block/bfq-iosched.c | 131 +++++++++++++++++++++++++++++++++++++++++++---------
 block/bfq-iosched.h |   7 ++-
 block/bfq-wf2q.c    |  30 ++++++------
 3 files changed, 128 insertions(+), 40 deletions(-)

--
2.16.1

Comments

Holger Hoffstätte June 26, 2018, 4:23 p.m. UTC | #1
On 06/25/18 21:55, Paolo Valente wrote:
> Hi,

> during some bandwidth tests, I found some occasional but severe

> malfunctions (losses of bandwidth control). The first three patches in

> this series fix the bugs that caused these malfunctions. The last

> patch is a fix/improvement of the name of one of the functions

> involved with these bugs.

> 

> I guess these patches are appropriate for next kernel release.


Ran these overnight on 2 machines on top of recent BFQ and nothing
caught on fire. One funny benchmark result stood out since it gave
me (repeatedly!) 560 MB/s read bandwidth on an SSD which is rated to
do "up to 550MB/s", so I guess BFQ's bandwidth guarantees are now
really quite strong. :-)

Therefore:
Tested-by: Holger Hoffstätte <holger@applied-asynchrony.com>


cheers,
Holger
Oleksandr Natalenko June 26, 2018, 8:35 p.m. UTC | #2
Hi.

On 25.06.2018 21:55, Paolo Valente wrote:
> Hi,

> during some bandwidth tests, I found some occasional but severe

> malfunctions (losses of bandwidth control). The first three patches in

> this series fix the bugs that caused these malfunctions. The last

> patch is a fix/improvement of the name of one of the functions

> involved with these bugs.

> 

> I guess these patches are appropriate for next kernel release.

> 

> Thanks,

> Paolo

> 

> Paolo Valente (4):

>   block, bfq: add/remove entity weights correctly

>   block, bfq: do not expire a queue that will deserve dispatch plugging

>   block, bfq: fix service being wrongly set to zero in case of

>     preemption

>   block, bfq: give a better name to bfq_bfqq_may_idle

> 

>  block/bfq-iosched.c | 131 

> +++++++++++++++++++++++++++++++++++++++++++---------

>  block/bfq-iosched.h |   7 ++-

>  block/bfq-wf2q.c    |  30 ++++++------

>  3 files changed, 128 insertions(+), 40 deletions(-)

> 

> --

> 2.16.1


So far, no smoke or visible issues while running it on my 2 SSDs with a 
daily workload applied.

Tested-by: Oleksandr Natalenko <oleksandr@natalenko.name>


Thanks.

-- 
   Oleksandr Natalenko (post-factum)
Jens Axboe June 28, 2018, 7:17 p.m. UTC | #3
On 6/25/18 1:55 PM, Paolo Valente wrote:
> Hi,

> during some bandwidth tests, I found some occasional but severe

> malfunctions (losses of bandwidth control). The first three patches in

> this series fix the bugs that caused these malfunctions. The last

> patch is a fix/improvement of the name of one of the functions

> involved with these bugs.


Applied for 4.19, thanks.

-- 
Jens Axboe