]> rtime.felk.cvut.cz Git - lisovros/qemu_apohw.git/commitdiff
cpu-exec: simplify align_clocks
authorPaolo Bonzini <pbonzini@redhat.com>
Wed, 28 Jan 2015 09:09:55 +0000 (10:09 +0100)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 2 Feb 2015 15:55:11 +0000 (16:55 +0100)
sc->diff_clk is already equal to sleep_delay (split in a second and a
nanosecond part).  If you subtract sleep_delay - rem_delay, the result
is exactly rem_delay.

Cc: Sebastian Tanase <sebastian.tanase@openwide.fr>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
cpu-exec.c

index a4f0effaf4c9593d4f6cc1dbb64a6bed80692716..9dd1ca5bb8dcc593ec6d46b00ca9236bbdff3066 100644 (file)
@@ -61,8 +61,7 @@ static void align_clocks(SyncClocks *sc, const CPUState *cpu)
         sleep_delay.tv_sec = sc->diff_clk / 1000000000LL;
         sleep_delay.tv_nsec = sc->diff_clk % 1000000000LL;
         if (nanosleep(&sleep_delay, &rem_delay) < 0) {
-            sc->diff_clk -= (sleep_delay.tv_sec - rem_delay.tv_sec) * 1000000000LL;
-            sc->diff_clk -= sleep_delay.tv_nsec - rem_delay.tv_nsec;
+            sc->diff_clk = rem_delay.tv_sec * 1000000000LL + rem_delay.tv_nsec;
         } else {
             sc->diff_clk = 0;
         }