From 456d60692310e7ac25cf822cc1e98192ad636ece Mon Sep 17 00:00:00 2001 From: Hans de Goede Date: Wed, 27 Mar 2013 20:29:40 +0100 Subject: qemu-char: Call fe_claim / fe_release when not using qdev chr properties chardev-frontends need to explictly check, increase and decrement the avail_connections "property" of the chardev when they are not using a qdev-chardev-property for the chardev. This fixes things like: qemu-kvm -chardev stdio,id=foo -device isa-serial,chardev=foo \ -mon chardev=foo Working, where they should fail. Most of the changes here are due to old hardware emulation code which is using serial_hds directly rather then a qdev-chardev-property. Signed-off-by: Hans de Goede Message-id: 1364412581-3672-3-git-send-email-hdegoede@redhat.com Signed-off-by: Anthony Liguori --- hw/sh_serial.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'hw/sh_serial.c') diff --git a/hw/sh_serial.c b/hw/sh_serial.c index 40e797c..4629695 100644 --- a/hw/sh_serial.c +++ b/hw/sh_serial.c @@ -396,9 +396,11 @@ void sh_serial_init(MemoryRegion *sysmem, s->chr = chr; - if (chr) + if (chr) { + qemu_chr_fe_claim_no_fail(chr); qemu_chr_add_handlers(chr, sh_serial_can_receive1, sh_serial_receive1, sh_serial_event, s); + } s->eri = eri_source; s->rxi = rxi_source; -- cgit v1.1