summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlberto Garcia2017-08-24 15:24:45 +0200
committerStefan Hajnoczi2017-08-29 17:54:45 +0200
commitfa36f1b2ebcd9a7b2a58c8e12dfb1cc8596c23c0 (patch)
tree59a9be9359f54e5ae617c5d6da36fd6bd5fde690
parentthrottle: Update the throttle_fix_bucket() documentation (diff)
downloadqemu-fa36f1b2ebcd9a7b2a58c8e12dfb1cc8596c23c0.tar.gz
qemu-fa36f1b2ebcd9a7b2a58c8e12dfb1cc8596c23c0.tar.xz
qemu-fa36f1b2ebcd9a7b2a58c8e12dfb1cc8596c23c0.zip
throttle: Make throttle_is_valid() a bit less verbose
Use a pointer to the bucket instead of repeating cfg->buckets[i] all the time. This makes the code more concise and will help us expand the checks later and save a few line breaks. Signed-off-by: Alberto Garcia <berto@igalia.com> Message-id: 763ffc40a26b17d54cf93f5a999e4656049fcf0c.1503580370.git.berto@igalia.com Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
-rw-r--r--util/throttle.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/util/throttle.c b/util/throttle.c
index 9a6bda813c..bde56fe3de 100644
--- a/util/throttle.c
+++ b/util/throttle.c
@@ -324,32 +324,31 @@ bool throttle_is_valid(ThrottleConfig *cfg, Error **errp)
}
for (i = 0; i < BUCKETS_COUNT; i++) {
- if (cfg->buckets[i].avg < 0 ||
- cfg->buckets[i].max < 0 ||
- cfg->buckets[i].avg > THROTTLE_VALUE_MAX ||
- cfg->buckets[i].max > THROTTLE_VALUE_MAX) {
+ LeakyBucket *bkt = &cfg->buckets[i];
+ if (bkt->avg < 0 || bkt->max < 0 ||
+ bkt->avg > THROTTLE_VALUE_MAX || bkt->max > THROTTLE_VALUE_MAX) {
error_setg(errp, "bps/iops/max values must be within [0, %lld]",
THROTTLE_VALUE_MAX);
return false;
}
- if (!cfg->buckets[i].burst_length) {
+ if (!bkt->burst_length) {
error_setg(errp, "the burst length cannot be 0");
return false;
}
- if (cfg->buckets[i].burst_length > 1 && !cfg->buckets[i].max) {
+ if (bkt->burst_length > 1 && !bkt->max) {
error_setg(errp, "burst length set without burst rate");
return false;
}
- if (cfg->buckets[i].max && !cfg->buckets[i].avg) {
+ if (bkt->max && !bkt->avg) {
error_setg(errp, "bps_max/iops_max require corresponding"
" bps/iops values");
return false;
}
- if (cfg->buckets[i].max && cfg->buckets[i].max < cfg->buckets[i].avg) {
+ if (bkt->max && bkt->max < bkt->avg) {
error_setg(errp, "bps_max/iops_max cannot be lower than bps/iops");
return false;
}