qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Juan Quintela <quintela@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Peter Maydell" <peter.maydell@linaro.org>,
	"Corey Minyard" <cminyard@mvista.com>,
	"Jason Wang" <jasowang@redhat.com>,
	"Juan Quintela" <quintela@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	"Markus Armbruster" <armbru@redhat.com>,
	"Marc-André Lureau" <marcandre.lureau@redhat.com>,
	"David Gibson" <david@gibson.dropbear.id.au>,
	"Laurent Vivier" <lvivier@redhat.com>,
	"Thomas Huth" <thuth@redhat.com>,
	"Eduardo Habkost" <ehabkost@redhat.com>,
	"Stefan Weil" <sw@weilnetz.de>,
	"Richard Henderson" <richard.henderson@linaro.org>,
	"Dr. David Alan Gilbert" <dgilbert@redhat.com>,
	qemu-arm@nongnu.org, "Richard Henderson" <rth@twiddle.net>,
	"Daniel P. Berrangé" <berrange@redhat.com>,
	"Philippe Mathieu-Daudé" <philmd@redhat.com>,
	"Fangrui Song" <i@maskray.me>,
	qemu-ppc@nongnu.org, "Paolo Bonzini" <pbonzini@redhat.com>,
	"Stefan Berger" <stefanb@linux.ibm.com>
Subject: [PULL 09/30] migration: Fix incorrect integer->float conversion caught by clang
Date: Tue, 14 Jan 2020 12:39:05 +0100	[thread overview]
Message-ID: <20200114113926.3556-10-quintela@redhat.com> (raw)
In-Reply-To: <20200114113926.3556-1-quintela@redhat.com>

From: Fangrui Song <i@maskray.me>

Clang does not like qmp_migrate_set_downtime()'s code to clamp double
@value to 0..INT64_MAX:

    qemu/migration/migration.c:2038:24: error: implicit conversion from 'long' to 'double' changes value from 9223372036854775807 to 9223372036854775808 [-Werror,-Wimplicit-int-float-conversion]

The warning will be enabled by default in clang 10. It is not
available for clang <= 9.

The clamp is actually useless; @value is checked to be within
0..MAX_MIGRATE_DOWNTIME_SECONDS immediately before.  Delete it.

While there, make the conversion from double to int64_t explicit.

Signed-off-by: Fangrui Song <i@maskray.me>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
[Patch split, commit message improved]
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
---
 migration/migration.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/migration/migration.c b/migration/migration.c
index 27500d09a9..f79d0bf89a 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -2035,11 +2035,10 @@ void qmp_migrate_set_downtime(double value, Error **errp)
     }
 
     value *= 1000; /* Convert to milliseconds */
-    value = MAX(0, MIN(INT64_MAX, value));
 
     MigrateSetParameters p = {
         .has_downtime_limit = true,
-        .downtime_limit = value,
+        .downtime_limit = (int64_t)value,
     };
 
     qmp_migrate_set_parameters(&p, errp);
-- 
2.24.1



  parent reply	other threads:[~2020-01-14 11:50 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-14 11:38 [PULL 00/30] Migration pull patches (3rd try) Juan Quintela
2020-01-14 11:38 ` [PULL 01/30] multifd: Initialize local variable Juan Quintela
2020-01-14 12:00   ` Daniel P. Berrangé
2020-01-14 11:38 ` [PULL 02/30] migration-test: Add migration multifd test Juan Quintela
2020-01-14 11:38 ` [PULL 03/30] migration: Make sure that we don't call write() in case of error Juan Quintela
2020-01-14 11:39 ` [PULL 04/30] migration-test: introduce functions to handle string parameters Juan Quintela
2020-01-14 11:39 ` [PULL 05/30] migration-test: ppc64: fix FORTH test program Juan Quintela
2020-01-14 11:39 ` [PULL 06/30] runstate: ignore finishmigrate -> prelaunch transition Juan Quintela
2020-01-14 11:39 ` [PULL 07/30] ram.c: remove unneeded labels Juan Quintela
2020-01-14 11:39 ` [PULL 08/30] migration: Rate limit inside host pages Juan Quintela
2020-01-14 11:39 ` Juan Quintela [this message]
2020-01-14 11:39 ` [PULL 10/30] migration: Fix the re-run check of the migrate-incoming command Juan Quintela
2020-01-14 11:39 ` [PULL 11/30] misc: use QEMU_IS_ALIGNED Juan Quintela
2020-01-14 11:39 ` [PULL 12/30] migration: add savevm_state_handler_remove() Juan Quintela
2020-01-14 11:39 ` [PULL 13/30] migration: savevm_state_handler_insert: constant-time element insertion Juan Quintela
2020-01-14 11:39 ` [PULL 14/30] migration/ram: Yield periodically to the main loop Juan Quintela
2020-01-14 11:39 ` [PULL 15/30] migration/postcopy: reduce memset when it is zero page and matches_target_page_size Juan Quintela
2020-01-14 11:39 ` [PULL 16/30] migration/postcopy: wait for decompress thread in precopy Juan Quintela
2020-01-14 11:39 ` [PULL 17/30] migration/postcopy: count target page number to decide the place_needed Juan Quintela
2020-01-14 11:39 ` [PULL 18/30] migration/postcopy: set all_zero to true on the first target page Juan Quintela
2020-01-14 11:39 ` [PULL 19/30] migration/postcopy: enable random order target page arrival Juan Quintela
2020-01-14 11:39 ` [PULL 20/30] migration/postcopy: enable compress during postcopy Juan Quintela
2020-01-14 11:39 ` [PULL 21/30] migration/multifd: clean pages after filling packet Juan Quintela
2020-01-14 11:39 ` [PULL 22/30] migration/multifd: not use multifd during postcopy Juan Quintela
2020-01-14 11:39 ` [PULL 23/30] migration/multifd: fix nullptr access in terminating multifd threads Juan Quintela
2020-01-14 11:39 ` [PULL 24/30] migration/multifd: fix destroyed mutex " Juan Quintela
2020-01-14 11:39 ` [PULL 25/30] Bug #1829242 correction Juan Quintela
2020-01-14 11:39 ` [PULL 26/30] migration: Define VMSTATE_INSTANCE_ID_ANY Juan Quintela
2020-01-14 11:39 ` [PULL 27/30] migration: Change SaveStateEntry.instance_id into uint32_t Juan Quintela
2020-01-14 11:39 ` [PULL 28/30] apic: Use 32bit APIC ID for migration instance ID Juan Quintela
2020-01-14 11:39 ` [PULL 29/30] migration: Support QLIST migration Juan Quintela
2020-01-14 11:39 ` [PULL 30/30] multifd: Allocate uint64_t instead of ram_addr_t Juan Quintela
2020-01-14 12:02   ` Daniel P. Berrangé
2020-01-14 12:44 ` [PULL 00/30] Migration pull patches (3rd try) Juan Quintela

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200114113926.3556-10-quintela@redhat.com \
    --to=quintela@redhat.com \
    --cc=armbru@redhat.com \
    --cc=berrange@redhat.com \
    --cc=cminyard@mvista.com \
    --cc=david@gibson.dropbear.id.au \
    --cc=dgilbert@redhat.com \
    --cc=ehabkost@redhat.com \
    --cc=i@maskray.me \
    --cc=jasowang@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=marcandre.lureau@redhat.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=philmd@redhat.com \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=rth@twiddle.net \
    --cc=stefanb@linux.ibm.com \
    --cc=sw@weilnetz.de \
    --cc=thuth@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).