On Sun, Jul 18, 2021 at 02:00:03PM +0100, Peter Maydell wrote: > On Sun, 18 Jul 2021 at 08:50, Volker Rümelin <vr_q...@t-online.de> wrote: > > > > Since commit 8eb13bbbac ("ui/gtk: vte: fix sending multiple > > characeters") it's very easy to lock up QEMU with the gtk ui. > > If you configure a guest with a serial device and the guest > > doesn't listen on this device, QEMU will lock up after > > entering two characters in the serial console. > > > > To fix this problem copy the function kbd_send_chars() and > > related code from ui/console.c to ui/gtk.c. kbd_send_chars() > > doesn't lock up because it uses a timer instead of a busy loop > > for the write retries. > > > > Fixes: 8eb13bbbac ("ui/gtk: vte: fix sending multiple characeters") > > Signed-off-by: Volker Rümelin <vr_q...@t-online.de> > > --- > > include/ui/gtk.h | 5 +++++ > > ui/gtk.c | 53 ++++++++++++++++++++++++++++++++++++++++-------- > > 2 files changed, 50 insertions(+), 8 deletions(-) > > This feels like maybe it's the kind of thing that should be handled > more generically rather than in one particular UI frontend ?
IIUC none of the other frontends directly talk to the chardevs for the serial ports. Instead they communicate via the text console interfaces. So GTK is a bit special already here. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|