From: Marc-André Lureau Date: Mon, 3 Oct 2016 09:47:03 +0000 (+0400) Subject: char: update read handler in all cases X-Git-Tag: qemu-xen-4.9.0-rc1~148^2~16 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=6a7b2b21008f271e7a91e937e521e22f94579bb9;p=qemu-xen.git char: update read handler in all cases In commit ac1b84dd1 (rhbz#1027181), a check was added to only update the "read handler" when the front-end is opened, because the read callbacks were not restored when a device is plugged. However, this seems not correct, the handler is correctly set back on hotplug (in virtconsole_realize) and the bug can no longer be reproduced. Calling chr_update_read_handler() allows to fix the mux driver to stop calling the child handlers (which may be going to be destroyed). Signed-off-by: Marc-André Lureau Message-Id: <20161003094704.18087-2-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini --- diff --git a/qemu-char.c b/qemu-char.c index 7a85b1f0b3..4b330ea90f 100644 --- a/qemu-char.c +++ b/qemu-char.c @@ -469,7 +469,7 @@ void qemu_chr_add_handlers_full(CharDriverState *s, s->chr_read = fd_read; s->chr_event = fd_event; s->handler_opaque = opaque; - if (fe_open && s->chr_update_read_handler) { + if (s->chr_update_read_handler) { s->chr_update_read_handler(s, context); }