Fix minimum blkio weight #36

wants to merge 1 commit into


None yet
2 participants

ghedo commented Jul 1, 2012

The blkio weight range is 100..1000 on Linux versions before 3.2.0 and 10..1000 on 3.2.0. Currently ulatencyd uses 1 for poisonous and idle processes and makes them having no penalty on disk usage (at least here, since they stay with blkio.weight=500).

@ghedo ghedo Fix minimum blkio weight
The blkio weight range is 100..1000 on Linux versions before 3.2.0 and 10..1000
on 3.2.0.

gajdusek commented Feb 17, 2014

Hi ghedo,

The minimum weight in the master branch is set to 10 for some... long time. I didn't know that Linux pre 3.2 versions have minimal of value of 100. I never closed this issue, IIRC because each time I wanted to, I got an idea to implement some transparent way of setting minimum weights, e.g. by some string that will be replaced at parsing time by an auto detected minimal value; or by a variable, or even make all weights proportional and transparently recalculating them to "absolute" values.

But I was inactive for long time, and even now this is not priority in my list.

I just want ensure, that you know this issue is fixed (for Linux >= 3.2) in case you still care. If you don't mind, I keep this issue open as a reminder to myself.


gajdusek added this to the 0.6.0 milestone Mar 2, 2014

@gajdusek gajdusek added a commit to gajdusek/ulatencyd that referenced this pull request Mar 2, 2014

@gajdusek gajdusek Detect valid range of values of cgroup parameters; fixes issue #36
Values of cgroup parameters, which range has been detected, are
recalculated in the mappings rules when the scheduler configuration
is loaded. Additionally, such parameters may have special value
"MIN" or "MAX".

Currently are detected and recalculated these parameters:
blkio.weight, bfqio.weight and cpu.shares.

They are detected in bootstrap.lua, after all cgroup subsystems
loaded. If detection fails for a parameter of loaded subsystem,
ulatencyd will die. This may be changed in bootstrap.lua; in such
case, parameters which range couldn't be detected, will be omitted
from the rules.

gajdusek closed this Mar 2, 2014

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment