[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] virtio-balloon: Tweak recent fix for integer ov
From: |
Eric Blake |
Subject: |
Re: [Qemu-devel] [PATCH] virtio-balloon: Tweak recent fix for integer overflow |
Date: |
Wed, 01 Oct 2014 10:48:36 -0600 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.1.1 |
On 10/01/2014 10:43 AM, Markus Armbruster wrote:
> Commit 1f9296b avoids "other kinds of overflow" by limiting the
> polling interval to UINT_MAX. The computations to protect are done in
> 64 bits. This is indeed safe when unsigned is 32 bits, as it commonly
> is. It isn't when unsigned is 64 bits. Purely theoretical; I'm not
> aware of such a system. Limit it to UINT32_MAX instead.
>
> Signed-off-by: Markus Armbruster <address@hidden>
> ---
> hw/virtio/virtio-balloon.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
Reviewed-by: Eric Blake <address@hidden>
Harmless sanity addition (I seriously doubt at this point that anyone
would ever introduce a platform where 'int' is larger than 32 bits)
>
> diff --git a/hw/virtio/virtio-balloon.c b/hw/virtio/virtio-balloon.c
> index b5cf7ca..7bfbb75 100644
> --- a/hw/virtio/virtio-balloon.c
> +++ b/hw/virtio/virtio-balloon.c
> @@ -170,7 +170,7 @@ static void balloon_stats_set_poll_interval(Object *obj,
> struct Visitor *v,
> return;
> }
>
> - if (value > UINT_MAX) {
> + if (value > UINT32_MAX) {
> error_setg(errp, "timer value is too big");
> return;
> }
>
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature