qemu-timer.c: Use upstream version.
This completely modifies the implementation of timers to match upstream,
the only difference is that the oddly-placed qemu_gpoll_ns() function is
disabled (it's not used yet).
Most of the changes here (but not all), were applied through the following
sed script:
s|qemu_get_clock\s*(\s*vm_clock\s*)|qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL)|g
s|qemu_get_clock\s*(\s*rt_clock\s*)|qemu_clock_get_ms(QEMU_CLOCK_REALTIME)|g
s|qemu_get_clock_ns\s*(\s*vm_clock\s*)|qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL)|g
s|qemu_get_clock_ns\s*(\s*rt_clock\s*)|qemu_clock_get_ns(QEMU_CLOCK_REALTIME)|g
s|qemu_get_clock_ms\s*(\s*vm_clock\s*)|qemu_clock_get_ms(QEMU_CLOCK_VIRTUAL)|g
s|qemu_get_clock_ms\s*(\s*rt_clock\s*)|qemu_clock_get_ms(QEMU_CLOCK_REALTIME)|g
s|qemu_get_clock_ms\s*(\s*host_clock\s*)|qemu_clock_get_ms(QEMU_CLOCK_HOST)|g
s|qemu_get_clock_ms\s*(\s*SHAPER_CLOCK\s*)|qemu_clock_get_ms(SHAPER_CLOCK)|g
s|qemu_mod_timer\s*(|timer_mod(|g
s|qemu_del_timer\s*(|timer_del(|g
s|qemu_free_timer\s*(|timer_free(|g
s|qemu_new_timer_ms\s*(\s*rt_clock,|timer_new(QEMU_CLOCK_REALTIME, SCALE_MS,|g
s|qemu_new_timer_ns\s*(\s*rt_clock,|timer_new(QEMU_CLOCK_REALTIME, SCALE_NS,|g
s|qemu_new_timer_ms\s*(\s*vm_clock,|timer_new(QEMU_CLOCK_VIRTUAL, SCALE_MS,|g
s|qemu_new_timer_ns\s*(\s*vm_clock,|timer_new(QEMU_CLOCK_VIRTUAL, SCALE_NS,|g
s|qemu_new_timer_ms\s*(\s*host_clock,|timer_new(QEMU_CLOCK_HOST, SCALE_MS,|g
s|qemu_new_timer_ns\s*(\s*host_clock,|timer_new(QEMU_CLOCK_HOST, SCALE_NS,|g
s|qemu_new_timer_ms\s*(\s*SHAPER_CLOCK\s*,|timer_new(SHAPER_CLOCK, SCALE_MS,|g
s|qemu_put_timer\s*(|timer_put(|g
s|qemu_get_timer\s*(|timer_get(|g
s|qemu_timer_pending\s*(|timer_pending(|g
s|qemu_clock_next_deadline\s*(\s*vm_clock|qemu_clock_deadline_ns_all(QEMU_CLOCK_VIRTUAL|g
s|qemu_clock_next_deadline\s*(\s*rt_clock|qemu_clock_deadline_ns_all(QEMU_CLOCK_REALTIME|g
s|qemu_clock_next_deadline\s*(\s*host_clock|qemu_clock_deadline_ns_all(QEMU_CLOCK_HOST|g
+ Disable icount-based clock warping/adjustments. It will be re-enabled in the future
after cpu emulation has been completely refactored.
Change-Id: Ifbcf4a52654eed3a08dfe59b0546a75d4627f758
diff --git a/telephony/sysdeps_qemu.c b/telephony/sysdeps_qemu.c
index b8501bf..e8e6f36 100644
--- a/telephony/sysdeps_qemu.c
+++ b/telephony/sysdeps_qemu.c
@@ -41,7 +41,7 @@
SysTime
sys_time_ms( void )
{
- return qemu_get_clock_ms(rt_clock);
+ return qemu_clock_get_ms(QEMU_CLOCK_REALTIME);
}
/** TIMERS
@@ -87,8 +87,8 @@
sys_timer_free( SysTimer timer )
{
if (timer->timer) {
- qemu_del_timer( timer->timer );
- qemu_free_timer( timer->timer );
+ timer_del( timer->timer );
+ timer_free( timer->timer );
timer->timer = NULL;
}
timer->next = _s_free_timers;
@@ -109,8 +109,8 @@
if (callback == NULL) { /* unsetting the timer */
if (timer->timer) {
- qemu_del_timer( timer->timer );
- qemu_free_timer( timer->timer );
+ timer_del( timer->timer );
+ timer_free( timer->timer );
timer->timer = NULL;
}
timer->callback = callback;
@@ -123,22 +123,22 @@
goto ReuseTimer;
/* need to replace the timer */
- qemu_free_timer( timer->timer );
+ timer_free( timer->timer );
}
- timer->timer = qemu_new_timer_ms( rt_clock, callback, opaque );
+ timer->timer = timer_new(QEMU_CLOCK_REALTIME, SCALE_MS, callback, opaque );
timer->callback = callback;
timer->opaque = opaque;
ReuseTimer:
- qemu_mod_timer( timer->timer, when );
+ timer_mod( timer->timer, when );
}
void
sys_timer_unset( SysTimer timer )
{
if (timer->timer) {
- qemu_del_timer( timer->timer );
+ timer_del( timer->timer );
}
}