> We have more timers than the one based on vm_clock. Does this help?
Yes, that patch fixes the problem for me.
>
> diff --git a/qemu-char.c b/qemu-char.c
> index 88f4025..242b799 100644
> --- a/qemu-char.c
> +++ b/qemu-char.c
> @@ -134,9 +134,9 @@ static void qemu_chr_fire_open_event(void
> *opaque) void qemu_chr_generic_open(CharDriverState *s) {
> if (s->open_timer == NULL) {
> - s->open_timer = qemu_new_timer_ms(vm_clock,
> + s->open_timer = qemu_new_timer_ms(rt_clock,
> qemu_chr_fire_open_event, s);
> - qemu_mod_timer(s->open_timer, qemu_get_clock_ms(vm_clock) - 1);
> + qemu_mod_timer(s->open_timer, qemu_get_clock_ms(rt_clock) - 1);
> }
> }