summaryrefslogtreecommitdiffstats
path: root/block/blk-iolatency.c
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2019-06-14 00:30:37 +0200
committerJens Axboe <axboe@kernel.dk>2019-06-15 18:39:36 +0200
commit5de0073fcd50cc1f150895a7bb04d3cf8067b1d7 (patch)
tree6bb69d881d5f4ece07693f4b8dae2dbeccad4c2d /block/blk-iolatency.c
parentblock: bio: Use struct_size() in kmalloc() (diff)
downloadlinux-5de0073fcd50cc1f150895a7bb04d3cf8067b1d7.tar.xz
linux-5de0073fcd50cc1f150895a7bb04d3cf8067b1d7.zip
blk-iolatency: clear use_delay when io.latency is set to zero
If use_delay was non-zero when the latency target of a cgroup was set to zero, it will stay stuck until io.latency is enabled on the cgroup again. This keeps readahead disabled for the cgroup impacting performance negatively. Signed-off-by: Tejun Heo <tj@kernel.org> Cc: Josef Bacik <jbacik@fb.com> Fixes: d70675121546 ("block: introduce blk-iolatency io controller") Cc: stable@vger.kernel.org # v4.19+ Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/blk-iolatency.c')
-rw-r--r--block/blk-iolatency.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/block/blk-iolatency.c b/block/blk-iolatency.c
index d22e61bced86..17896bb3aaf2 100644
--- a/block/blk-iolatency.c
+++ b/block/blk-iolatency.c
@@ -778,8 +778,10 @@ static int iolatency_set_min_lat_nsec(struct blkcg_gq *blkg, u64 val)
if (!oldval && val)
return 1;
- if (oldval && !val)
+ if (oldval && !val) {
+ blkcg_clear_delay(blkg);
return -1;
+ }
return 0;
}