From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=56129 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Q2ODw-0002ye-W7 for qemu-devel@nongnu.org; Wed, 23 Mar 2011 09:35:54 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Q2ODM-0004eE-LO for qemu-devel@nongnu.org; Wed, 23 Mar 2011 09:35:10 -0400 Received: from mx1.redhat.com ([209.132.183.28]:1030) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q2ODM-0004dt-8h for qemu-devel@nongnu.org; Wed, 23 Mar 2011 09:35:08 -0400 From: Juan Quintela In-Reply-To: (Amit Shah's message of "Mon, 21 Mar 2011 18:39:20 +0530") References: Date: Wed, 23 Mar 2011 14:33:25 +0100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Subject: [Qemu-devel] Re: [PATCH 5/7] virtio-serial: Don't clear ->have_data() pointer after unplug Reply-To: quintela@redhat.com List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Amit Shah Cc: qemu list Amit Shah wrote: > After a port unplug operation, the port->info->have_data() pointer was > set to NULL. The problem is, the ->info struct is shared by all ports, > effectively disabling writes to other ports. > > Reported-by: juzhang > Signed-off-by: Amit Shah > --- > hw/virtio-console.c | 1 - > 1 files changed, 0 insertions(+), 1 deletions(-) > > diff --git a/hw/virtio-console.c b/hw/virtio-console.c > index 4440784..be59558 100644 > --- a/hw/virtio-console.c > +++ b/hw/virtio-console.c > @@ -82,7 +82,6 @@ static int virtconsole_exitfn(VirtIOSerialPort *port) > VirtConsole *vcon = DO_UPCAST(VirtConsole, port, port); > > if (vcon->chr) { > - port->info->have_data = NULL; > qemu_chr_close(vcon->chr); > } Discussed with Amit over irc, I think that we are missing setup of have_data for non console devices, but that is a different bug that the one being fixed here. Later, Juan.