qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] ratelimit: restrict the delay time to a non-negative value


From: Wang Liang
Subject: Re: [PATCH] ratelimit: restrict the delay time to a non-negative value
Date: Wed, 21 Sep 2022 09:47:32 +0800

On Tue, 2022-09-20 at 13:18 +0000, Alberto Garcia wrote:
> On Tue 20 Sep 2022 08:33:50 PM +08, wangliangzz@126.com wrote:
> > From: Wang Liang <wangliangzz@inspur.com>
> > 
> > The delay time should never be a negative value.
> > 
> > -    return limit->slice_end_time - now;
> > +    return MAX(limit->slice_end_time - now, 0);
> 
> How can this be negative? slice_end_time is guaranteed to be larger
> than
> now:
> 
>     if (limit->slice_end_time < now) {
>         /* Previous, possibly extended, time slice finished; reset
> the
>          * accounting. */
>         limit->slice_start_time = now;
>         limit->slice_end_time = now + limit->slice_ns;
>         limit->dispatched = 0;
>     }
> 
This is just a guarantee. 

If slice_end_time is assigned later by
    limit->slice_end_time = limit->slice_start_time +
        (uint64_t)(delay_slices * limit->slice_ns);
There may be precision issues at that time.

> Berto




reply via email to

[Prev in Thread] Current Thread [Next in Thread]