ae23c9
From 76dfca00588aeb71d85bac7ee0e2cf89df0d5b15 Mon Sep 17 00:00:00 2001
ae23c9
From: David Hildenbrand <david@redhat.com>
ae23c9
Date: Fri, 21 Dec 2018 15:36:06 +0000
ae23c9
Subject: [PATCH 04/22] s390x/tcg: drop tod_basetime
ae23c9
ae23c9
RH-Author: David Hildenbrand <david@redhat.com>
ae23c9
Message-id: <20181221153614.27961-5-david@redhat.com>
ae23c9
Patchwork-id: 83747
ae23c9
O-Subject: [RHEL-8.0 qemu-kvm v2 PATCH 04/12] s390x/tcg: drop tod_basetime
ae23c9
Bugzilla: 1653569
ae23c9
RH-Acked-by: Cornelia Huck <cohuck@redhat.com>
ae23c9
RH-Acked-by: Thomas Huth <thuth@redhat.com>
ae23c9
RH-Acked-by: Laurent Vivier <lvivier@redhat.com>
ae23c9
ae23c9
Never set to anything but 0.
ae23c9
ae23c9
Reviewed-by: Thomas Huth <thuth@redhat.com>
ae23c9
Signed-off-by: David Hildenbrand <david@redhat.com>
ae23c9
Message-Id: <20180627134410.4901-5-david@redhat.com>
ae23c9
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
ae23c9
(cherry picked from commit f777b20544fe5db3de179a83374cbf9f1e454427)
ae23c9
Signed-off-by: David Hildenbrand <david@redhat.com>
ae23c9
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
ae23c9
---
ae23c9
 target/s390x/cpu.c         | 1 -
ae23c9
 target/s390x/cpu.h         | 1 -
ae23c9
 target/s390x/misc_helper.c | 4 ++--
ae23c9
 3 files changed, 2 insertions(+), 4 deletions(-)
ae23c9
ae23c9
diff --git a/target/s390x/cpu.c b/target/s390x/cpu.c
ae23c9
index 167d089..5570741 100644
ae23c9
--- a/target/s390x/cpu.c
ae23c9
+++ b/target/s390x/cpu.c
ae23c9
@@ -290,7 +290,6 @@ static void s390_cpu_initfn(Object *obj)
ae23c9
     qemu_get_timedate(&tm, 0);
ae23c9
     env->tod_offset = TOD_UNIX_EPOCH +
ae23c9
                       (time2tod(mktimegm(&tm)) * 1000000000ULL);
ae23c9
-    env->tod_basetime = 0;
ae23c9
     env->tod_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, s390x_tod_timer, cpu);
ae23c9
     env->cpu_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, s390x_cpu_timer, cpu);
ae23c9
     s390_cpu_set_state(S390_CPU_STATE_STOPPED, cpu);
ae23c9
diff --git a/target/s390x/cpu.h b/target/s390x/cpu.h
ae23c9
index 67118c8..04f9adf 100644
ae23c9
--- a/target/s390x/cpu.h
ae23c9
+++ b/target/s390x/cpu.h
ae23c9
@@ -134,7 +134,6 @@ struct CPUS390XState {
ae23c9
 #endif
ae23c9
 
ae23c9
     uint64_t tod_offset;
ae23c9
-    uint64_t tod_basetime;
ae23c9
     QEMUTimer *tod_timer;
ae23c9
 
ae23c9
     QEMUTimer *cpu_timer;
ae23c9
diff --git a/target/s390x/misc_helper.c b/target/s390x/misc_helper.c
ae23c9
index e0b23c1..8b3b040 100644
ae23c9
--- a/target/s390x/misc_helper.c
ae23c9
+++ b/target/s390x/misc_helper.c
ae23c9
@@ -142,7 +142,7 @@ uint64_t HELPER(stck)(CPUS390XState *env)
ae23c9
     uint64_t time;
ae23c9
 
ae23c9
     time = env->tod_offset +
ae23c9
-        time2tod(qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) - env->tod_basetime);
ae23c9
+        time2tod(qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL));
ae23c9
 
ae23c9
     return time;
ae23c9
 }
ae23c9
@@ -162,7 +162,7 @@ void HELPER(sckc)(CPUS390XState *env, uint64_t time)
ae23c9
     /* nanoseconds */
ae23c9
     time = tod2time(time);
ae23c9
 
ae23c9
-    timer_mod(env->tod_timer, env->tod_basetime + time);
ae23c9
+    timer_mod(env->tod_timer, time);
ae23c9
 }
ae23c9
 
ae23c9
 /* Set Tod Programmable Field */
ae23c9
-- 
ae23c9
1.8.3.1
ae23c9