throttle: Set always an average value when setting a maximum value
When testing the ranges of valid values, set_cfg_value() creates sometimes invalid throttling configurations by setting bucket.max while leaving bucket.avg uninitialized. While this doesn't break the current tests, it will as soon as we unify all functions that check the validity of the throttling configuration. This patch ensures that the value of bucket.avg is valid when setting bucket.max. Signed-off-by: Alberto Garcia <berto@igalia.com> Reviewed-by: Kevin Wolf <kwolf@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
03ba36c83d
commit
6f9b6d57ae
@ -222,6 +222,8 @@ static void set_cfg_value(bool is_max, int index, int value)
|
||||
{
|
||||
if (is_max) {
|
||||
cfg.buckets[index].max = value;
|
||||
/* If max is set, avg should never be 0 */
|
||||
cfg.buckets[index].avg = MAX(cfg.buckets[index].avg, 1);
|
||||
} else {
|
||||
cfg.buckets[index].avg = value;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user