Always process real timers regardless of singlestep mode (Jason Wessel).
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4462 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
cf7c2ca5ff
commit
21b20814ed
|
@ -420,7 +420,7 @@ int cpu_exec(CPUState *env1)
|
||||||
#if defined(TARGET_I386)
|
#if defined(TARGET_I386)
|
||||||
&& env->hflags & HF_GIF_MASK
|
&& env->hflags & HF_GIF_MASK
|
||||||
#endif
|
#endif
|
||||||
&& !(env->singlestep_enabled & SSTEP_NOIRQ)) {
|
&& likely(!(env->singlestep_enabled & SSTEP_NOIRQ))) {
|
||||||
if (interrupt_request & CPU_INTERRUPT_DEBUG) {
|
if (interrupt_request & CPU_INTERRUPT_DEBUG) {
|
||||||
env->interrupt_request &= ~CPU_INTERRUPT_DEBUG;
|
env->interrupt_request &= ~CPU_INTERRUPT_DEBUG;
|
||||||
env->exception_index = EXCP_DEBUG;
|
env->exception_index = EXCP_DEBUG;
|
||||||
|
|
3
vl.c
3
vl.c
|
@ -7032,7 +7032,7 @@ void main_loop_wait(int timeout)
|
||||||
qemu_aio_poll();
|
qemu_aio_poll();
|
||||||
|
|
||||||
if (vm_running) {
|
if (vm_running) {
|
||||||
if (!(cur_cpu->singlestep_enabled & SSTEP_NOTIMER))
|
if (likely(!(cur_cpu->singlestep_enabled & SSTEP_NOTIMER)))
|
||||||
qemu_run_timers(&active_timers[QEMU_TIMER_VIRTUAL],
|
qemu_run_timers(&active_timers[QEMU_TIMER_VIRTUAL],
|
||||||
qemu_get_clock(vm_clock));
|
qemu_get_clock(vm_clock));
|
||||||
/* run dma transfers, if any */
|
/* run dma transfers, if any */
|
||||||
|
@ -7040,7 +7040,6 @@ void main_loop_wait(int timeout)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* real time timers */
|
/* real time timers */
|
||||||
if (!(cur_cpu->singlestep_enabled & SSTEP_NOTIMER))
|
|
||||||
qemu_run_timers(&active_timers[QEMU_TIMER_REALTIME],
|
qemu_run_timers(&active_timers[QEMU_TIMER_REALTIME],
|
||||||
qemu_get_clock(rt_clock));
|
qemu_get_clock(rt_clock));
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue