On Tue, Aug 17, 2021 at 2:38 AM David Hoppenbrouwers <da...@salt-inc.org> wrote:
>
> `next` is an `uint64_t` value, but `timer_mod` takes an `int64_t`. This
> resulted in high values such as `UINT64_MAX` being converted to `-1`,
> which caused an immediate timer interrupt.
>
> By limiting `next` to `INT64_MAX` no overflow will happen while the
> timer will still be effectively set to "infinitely" far in the future.
>
> Resolves: https://gitlab.com/qemu-project/qemu/-/issues/493
> Signed-off-by: David Hoppenbrouwers <da...@salt-inc.org>
> ---
> I wrongly used `MAX` instead of `MIN`. I've amended the patch.
>
>  hw/intc/sifive_clint.c | 2 ++
>  1 file changed, 2 insertions(+)
>

Reviewed-by: Bin Meng <bmeng...@gmail.com>

Reply via email to