aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--android/main.c9
-rw-r--r--qemu-timer.c10
2 files changed, 8 insertions, 11 deletions
diff --git a/android/main.c b/android/main.c
index 4315c4e..03cc2a8 100644
--- a/android/main.c
+++ b/android/main.c
@@ -804,15 +804,6 @@ int main(int argc, char **argv)
/* physical memory is now in hw->hw_ramSize */
- /* on Linux, the 'dynticks' clock sometimes doesn't work
- * properly. this results in the UI freezing while emulation
- * continues, for several seconds...
- */
-#ifdef __linux__
- args[n++] = "-clock";
- args[n++] = "unix";
-#endif
-
args[n++] = "-android-avdname";
args[n++] = (char*) avdInfo_getName(avd);
diff --git a/qemu-timer.c b/qemu-timer.c
index 0ed5ba9..82a5de3 100644
--- a/qemu-timer.c
+++ b/qemu-timer.c
@@ -394,14 +394,20 @@ int64_t qemu_icount_round(int64_t count)
static struct qemu_alarm_timer alarm_timers[] = {
#ifndef _WIN32
#ifdef __linux__
- {"dynticks", dynticks_start_timer,
- dynticks_stop_timer, dynticks_rearm_timer, NULL},
/* HPET - if available - is preferred */
{"hpet", hpet_start_timer, hpet_stop_timer, NULL, NULL},
/* ...otherwise try RTC */
{"rtc", rtc_start_timer, rtc_stop_timer, NULL, NULL},
#endif
{"unix", unix_start_timer, unix_stop_timer, NULL, NULL},
+#ifdef __linux__
+ /* on Linux, the 'dynticks' clock sometimes doesn't work
+ * properly. this results in the UI freezing while emulation
+ * continues, for several seconds... So move it to the end
+ * of the list. */
+ {"dynticks", dynticks_start_timer,
+ dynticks_stop_timer, dynticks_rearm_timer, NULL},
+#endif
#else
{"dynticks", win32_start_timer,
win32_stop_timer, win32_rearm_timer, &alarm_win32_data},