diff mbox

[PULL,18/34] throttle: Set always an average value when setting a maximum value

Message ID 1456158772-9344-19-git-send-email-kwolf@redhat.com
State New, archived
Headers show

Commit Message

Kevin Wolf Feb. 22, 2016, 4:32 p.m. UTC
From: Alberto Garcia <berto@igalia.com>

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

This patch ensures that the value of bucket.avg is valid when setting

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>
 tests/test-throttle.c | 2 ++
 1 file changed, 2 insertions(+)
diff mbox


diff --git a/tests/test-throttle.c b/tests/test-throttle.c
index 0e7c7e0..3e208a8 100644
--- a/tests/test-throttle.c
+++ b/tests/test-throttle.c
@@ -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;