throttle: Assert that bkt->max is valid in throttle_compute_wait()
If bkt->max == 0 and bkt->burst_length > 1 then we could have a division by 0 in throttle_do_compute_wait(). That configuration is however not permitted and is already detected by throttle_is_valid(), but let's assert it in throttle_compute_wait() to make it explicit. Found by Coverity (CID: 1381016). Signed-off-by: Alberto Garcia <berto@igalia.com> Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
93e53fb695
commit
b5806108d2
@ -124,6 +124,7 @@ int64_t throttle_compute_wait(LeakyBucket *bkt)
|
||||
/* If the main bucket is not full yet we still have to check the
|
||||
* burst bucket in order to enforce the burst limit */
|
||||
if (bkt->burst_length > 1) {
|
||||
assert(bkt->max > 0); /* see throttle_is_valid() */
|
||||
extra = bkt->burst_level - burst_bucket_size;
|
||||
if (extra > 0) {
|
||||
return throttle_do_compute_wait(bkt->max, extra);
|
||||
|
Loading…
Reference in New Issue
Block a user