[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 07/11] qemu-char: Move incrementing of avail_con
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [PATCH 07/11] qemu-char: Move incrementing of avail_connections to qdev-properties-system |
Date: |
Tue, 26 Mar 2013 14:07:50 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130311 Thunderbird/17.0.4 |
Il 26/03/2013 11:07, Hans de Goede ha scritto:
> The decrement of avail_connections is done in qdev-properties-system move
> the increment there too for proper balancing of the calls.
>
> Signed-off-by: Hans de Goede <address@hidden>
> ---
> hw/qdev-properties-system.c | 6 ++++--
> qemu-char.c | 2 --
> 2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/hw/qdev-properties-system.c b/hw/qdev-properties-system.c
> index 8795144..12a87d5 100644
> --- a/hw/qdev-properties-system.c
> +++ b/hw/qdev-properties-system.c
> @@ -136,9 +136,11 @@ static void release_chr(Object *obj, const char *name,
> void *opaque)
> DeviceState *dev = DEVICE(obj);
> Property *prop = opaque;
> CharDriverState **ptr = qdev_get_prop_ptr(dev, prop);
> + CharDriverState *chr = *ptr;
>
> - if (*ptr) {
> - qemu_chr_add_handlers(*ptr, NULL, NULL, NULL, NULL);
> + if (chr) {
> + qemu_chr_add_handlers(chr, NULL, NULL, NULL, NULL);
> + ++chr->avail_connections;
> }
> }
>
> diff --git a/qemu-char.c b/qemu-char.c
> index 8a66627..368e7f5 100644
> --- a/qemu-char.c
> +++ b/qemu-char.c
> @@ -197,8 +197,6 @@ void qemu_chr_add_handlers(CharDriverState *s,
> int fe_open;
>
> if (!opaque && !fd_can_read && !fd_read && !fd_event) {
> - /* chr driver being released. */
> - ++s->avail_connections;
> fe_open = 0;
> } else {
> fe_open = 1;
>
I think this is still wrong (though better than before this patch).
This is still not giving an error:
qemu-kvm \
-chardev stdio,id=foo -device isa-serial,chardev=foo \
-mon chardev=foo
because other users of -chardev (monitor and rng-egd), are not
decrementing avail_connections. Can you look at it in a follow-up?
Paolo
- [Qemu-devel] [PATCH 0/11] chardev frontend open handling cleanup v2, Hans de Goede, 2013/03/26
- [Qemu-devel] [PATCH 01/11] qemu-char: Rename opened to be_open, Hans de Goede, 2013/03/26
- [Qemu-devel] [PATCH 02/11] qemu-char: Rename qemu_chr_generic_open to qemu_chr_be_generic_open, Hans de Goede, 2013/03/26
- [Qemu-devel] [PATCH 05/11] qemu-char: Cleanup: consolidate fe_open/fe_close into fe_set_open, Hans de Goede, 2013/03/26
- [Qemu-devel] [PATCH 04/11] qemu-char: Automatically do fe_open / fe_close on qemu_chr_add_handlers, Hans de Goede, 2013/03/26
- [Qemu-devel] [PATCH 03/11] qemu-char: Add fe_open tracking, Hans de Goede, 2013/03/26
- [Qemu-devel] [PATCH 07/11] qemu-char: Move incrementing of avail_connections to qdev-properties-system, Hans de Goede, 2013/03/26
- Re: [Qemu-devel] [PATCH 07/11] qemu-char: Move incrementing of avail_connections to qdev-properties-system,
Paolo Bonzini <=
- Re: [Qemu-devel] [PATCH 07/11] qemu-char: Move incrementing of avail_connections to qdev-properties-system, Hans de Goede, 2013/03/26
- Re: [Qemu-devel] [PATCH 07/11] qemu-char: Move incrementing of avail_connections to qdev-properties-system, Paolo Bonzini, 2013/03/26
- Re: [Qemu-devel] [PATCH 07/11] qemu-char: Move incrementing of avail_connections to qdev-properties-system, Hans de Goede, 2013/03/27
- Re: [Qemu-devel] [PATCH 07/11] qemu-char: Move incrementing of avail_connections to qdev-properties-system, Paolo Bonzini, 2013/03/27
- Re: [Qemu-devel] [PATCH 07/11] qemu-char: Move incrementing of avail_connections to qdev-properties-system, Hans de Goede, 2013/03/27
[Qemu-devel] [PATCH 06/11] qemu-char: Consolidate guest_close/guest_open into a set_fe_open callback, Hans de Goede, 2013/03/26
[Qemu-devel] [PATCH 08/11] qemu-char: add_handlers: Don't re-send the be_open event on unregister, Hans de Goede, 2013/03/26
[Qemu-devel] [PATCH 10/11] virtio-serial: propagate guest_connected to the port on post_load, Hans de Goede, 2013/03/26
[Qemu-devel] [PATCH 09/11] virtio-serial: Consolidate guest_open/guest_close into set_guest_connected, Hans de Goede, 2013/03/26
[Qemu-devel] [PATCH 11/11] spice-qemu-char: Drop hackish vmc_register on spice_chr_write, Hans de Goede, 2013/03/26