throttle: Make throttle_max_is_missing_limit() set errp

The caller does not need to set it, and this will allow us to refactor
this function later.

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:
Alberto Garcia 2016-02-18 12:26:56 +02:00 committed by Kevin Wolf
parent 6921b18095
commit 45b2d418e0
4 changed files with 9 additions and 8 deletions

View File

@ -355,9 +355,7 @@ static bool check_throttle_config(ThrottleConfig *cfg, Error **errp)
return false;
}
if (throttle_max_is_missing_limit(cfg)) {
error_setg(errp, "bps_max/iops_max require corresponding"
" bps/iops values");
if (throttle_max_is_missing_limit(cfg, errp)) {
return false;
}

View File

@ -110,7 +110,7 @@ bool throttle_conflicting(ThrottleConfig *cfg, Error **errp);
bool throttle_is_valid(ThrottleConfig *cfg);
bool throttle_max_is_missing_limit(ThrottleConfig *cfg);
bool throttle_max_is_missing_limit(ThrottleConfig *cfg, Error **errp);
void throttle_config(ThrottleState *ts,
ThrottleTimers *tt,

View File

@ -338,15 +338,15 @@ static void test_max_is_missing_limit(void)
memset(&cfg, 0, sizeof(cfg));
cfg.buckets[i].max = 100;
cfg.buckets[i].avg = 0;
g_assert(throttle_max_is_missing_limit(&cfg));
g_assert(throttle_max_is_missing_limit(&cfg, NULL));
cfg.buckets[i].max = 0;
cfg.buckets[i].avg = 0;
g_assert(!throttle_max_is_missing_limit(&cfg));
g_assert(!throttle_max_is_missing_limit(&cfg, NULL));
cfg.buckets[i].max = 0;
cfg.buckets[i].avg = 100;
g_assert(!throttle_max_is_missing_limit(&cfg));
g_assert(!throttle_max_is_missing_limit(&cfg, NULL));
}
}

View File

@ -306,13 +306,16 @@ bool throttle_is_valid(ThrottleConfig *cfg)
/* check if bps_max/iops_max is used without bps/iops
* @cfg: the throttling configuration to inspect
* @errp: error object
*/
bool throttle_max_is_missing_limit(ThrottleConfig *cfg)
bool throttle_max_is_missing_limit(ThrottleConfig *cfg, Error **errp)
{
int i;
for (i = 0; i < BUCKETS_COUNT; i++) {
if (cfg->buckets[i].max && !cfg->buckets[i].avg) {
error_setg(errp, "bps_max/iops_max require corresponding"
" bps/iops values");
return true;
}
}