diff options
-rw-r--r-- | android/main.c | 9 | ||||
-rw-r--r-- | qemu-timer.c | 10 |
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}, |