[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH V4] char: restore read callback on a reattached
From: |
Amit Shah |
Subject: |
Re: [Qemu-devel] [PATCH V4] char: restore read callback on a reattached (hotplug) chardev |
Date: |
Wed, 18 Dec 2013 11:05:47 +0530 |
On (Tue) 17 Dec 2013 [11:12:02], Gal Hammer wrote:
> On 16/12/2013 22:32, Amit Shah wrote:
> >On (Sun) 15 Dec 2013 [12:26:37], Gal Hammer wrote:
> >>Fix a bug that was introduced in commit 386a5a1e. A removal of a device
> >>set the chr handlers to NULL. However when the device is plugged back,
> >>its read callback is not restored so data can't be transferred from the
> >>host to the guest (e.g. via the virtio-serial port).
> >>
> >>https://bugzilla.redhat.com/show_bug.cgi?id=1027181
> >>
> >>Signed-off-by: Gal Hammer <address@hidden>
> >>
> >>---
> >> qemu-char.c | 17 +++++++++++++++--
> >> 1 file changed, 15 insertions(+), 2 deletions(-)
> >>
> >>V4: - Same as V3, but this time done right.
> >>
> >>V3: - fix a typo in comment.
> >> - move the revision history after the "signed-off-by" tag.
> >>
> >>V2: - do not call chr_update_read_handler on device removal.
> >> - add asserts to verify chr_update_read_handler is not called
> >> with an assigned fd_in_tag to prevent fd leaks.
> >> - update fd and udp backends' chr_update_read_handler function
> >> so it won't remove fd_in to prevent a double release.
> >
> >Looks like you missed the pty backend. Can't blame you -- this
> >chardev stuff is really messy. pty is doing is own handling + polling
> >+ HUP detection, which really is equally applicable to tcp and udp as
> >well.
>
> As far as I could tell the pty backend doesn't suffer from this
> issue. That's why I didn't change anything there.
pty_chr_update_read_handler() calls pty_chr_state(), which calls
remove_fd_in_watch().
Amit