diff mbox

Revert "timer: replace time() with QEMU_CLOCK_HOST"

Message ID 1425955387-26318-1-git-send-email-aik@ozlabs.ru
State New
Headers show

Commit Message

Alexey Kardashevskiy March 10, 2015, 2:43 a.m. UTC
This reverts commit 2ed1ebcf65edf6757d8904000889ce52cc0a9d1b
as it breaks compile when configured with --enable-profiler:

/home/alexey/p/qemu/vl.c:710:15: error: 'qemu_time' redeclared as different kind of symbol
 static time_t qemu_time(void)
               ^
In file included from /home/alexey/p/qemu/include/block/aio.h:23:0,
                 from /home/alexey/p/qemu/include/hw/hw.h:13,
                 from /home/alexey/p/qemu/vl.c:62:
/home/alexey/p/qemu/include/qemu/timer.h:1005:16: note: previous declaration of 'qemu_time' was here
 extern int64_t qemu_time, qemu_time_start;
                ^

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
---


I could rename qemu_time() but could not think of any nice and simple name
instead so here is revert :)


---
 vl.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

Comments

Paolo Bonzini March 10, 2015, 11:05 a.m. UTC | #1
On 10/03/2015 03:43, Alexey Kardashevskiy wrote:
> This reverts commit 2ed1ebcf65edf6757d8904000889ce52cc0a9d1b
> as it breaks compile when configured with --enable-profiler:
> 
> /home/alexey/p/qemu/vl.c:710:15: error: 'qemu_time' redeclared as different kind of symbol
>  static time_t qemu_time(void)
>                ^
> In file included from /home/alexey/p/qemu/include/block/aio.h:23:0,
>                  from /home/alexey/p/qemu/include/hw/hw.h:13,
>                  from /home/alexey/p/qemu/vl.c:62:
> /home/alexey/p/qemu/include/qemu/timer.h:1005:16: note: previous declaration of 'qemu_time' was here
>  extern int64_t qemu_time, qemu_time_start;
>                 ^
> 
> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
> ---
> 
> 
> I could rename qemu_time() but could not think of any nice and simple name
> instead so here is revert :)

ENABLE_PROFILER is a bit broken in many ways:

1) half of it only works for TCG, but doesn't say this anywhere.

2) the division by get_ticks_per_sec() doesn't work since the unit of
measurement is clock cycles rather than nanoseconds.  (Broken since 2006).

3) you really can get the same information from "top" now that we have
VCPU threads.

4) It declares non-existing extern variables qemu_time_start and
tlb_flush_time, the latter of which has never existed _at all_.

But let's fix it.

Paolo
Alexey Kardashevskiy March 10, 2015, 11:49 a.m. UTC | #2
On 03/10/2015 10:05 PM, Paolo Bonzini wrote:
>
>
> On 10/03/2015 03:43, Alexey Kardashevskiy wrote:
>> This reverts commit 2ed1ebcf65edf6757d8904000889ce52cc0a9d1b
>> as it breaks compile when configured with --enable-profiler:
>>
>> /home/alexey/p/qemu/vl.c:710:15: error: 'qemu_time' redeclared as different kind of symbol
>>   static time_t qemu_time(void)
>>                 ^
>> In file included from /home/alexey/p/qemu/include/block/aio.h:23:0,
>>                   from /home/alexey/p/qemu/include/hw/hw.h:13,
>>                   from /home/alexey/p/qemu/vl.c:62:
>> /home/alexey/p/qemu/include/qemu/timer.h:1005:16: note: previous declaration of 'qemu_time' was here
>>   extern int64_t qemu_time, qemu_time_start;
>>                  ^
>>
>> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
>> ---
>>
>>
>> I could rename qemu_time() but could not think of any nice and simple name
>> instead so here is revert :)
>
> ENABLE_PROFILER is a bit broken in many ways:
>
> 1) half of it only works for TCG, but doesn't say this anywhere.
>
> 2) the division by get_ticks_per_sec() doesn't work since the unit of
> measurement is clock cycles rather than nanoseconds.  (Broken since 2006).
>
> 3) you really can get the same information from "top" now that we have
> VCPU threads.
>
> 4) It declares non-existing extern variables qemu_time_start and
> tlb_flush_time, the latter of which has never existed _at all_.
>
> But let's fix it.

Sure! Who/how? :) Or fixing means removing it? I am not using it, it is in 
my configure invoke script for ages.
Paolo Bonzini March 10, 2015, 11:54 a.m. UTC | #3
On 10/03/2015 12:49, Alexey Kardashevskiy wrote:
> Sure! Who/how? :)

s/qemu_time/tcg_time/, but if Peter is not using it and Fabrice broke
it, might as well remove it.

Paolo
diff mbox

Patch

diff --git a/vl.c b/vl.c
index b47e223..0e59688 100644
--- a/vl.c
+++ b/vl.c
@@ -707,17 +707,13 @@  void vm_start(void)
 /***********************************************************/
 /* real time host monotonic timer */
 
-static time_t qemu_time(void)
-{
-    return qemu_clock_get_ms(QEMU_CLOCK_HOST) / 1000;
-}
-
 /***********************************************************/
 /* host time/date access */
 void qemu_get_timedate(struct tm *tm, int offset)
 {
-    time_t ti = qemu_time();
+    time_t ti;
 
+    time(&ti);
     ti += offset;
     if (rtc_date_offset == -1) {
         if (rtc_utc)
@@ -745,7 +741,7 @@  int qemu_timedate_diff(struct tm *tm)
     else
         seconds = mktimegm(tm) + rtc_date_offset;
 
-    return seconds - qemu_time();
+    return seconds - time(NULL);
 }
 
 static void configure_rtc_date_offset(const char *startdate, int legacy)
@@ -783,7 +779,7 @@  static void configure_rtc_date_offset(const char *startdate, int legacy)
                             "'2006-06-17T16:01:21' or '2006-06-17'\n");
             exit(1);
         }
-        rtc_date_offset = qemu_time() - rtc_start_date;
+        rtc_date_offset = time(NULL) - rtc_start_date;
     }
 }