From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:39397) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TwZ8A-0005iU-8C for qemu-devel@nongnu.org; Sat, 19 Jan 2013 09:10:47 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TwZ89-0001FU-3s for qemu-devel@nongnu.org; Sat, 19 Jan 2013 09:10:46 -0500 Sender: Paolo Bonzini Message-ID: <50FAA960.2000007@redhat.com> Date: Sat, 19 Jan 2013 15:10:40 +0100 From: Paolo Bonzini MIME-Version: 1.0 References: <1357828825-2414-1-git-send-email-pbonzini@redhat.com> In-Reply-To: <1357828825-2414-1-git-send-email-pbonzini@redhat.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH] virtio-s390: add a reset function to virtio-s390 devices List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: agraf@suse.de Cc: qemu-devel@nongnu.org, qemu-stable@nongnu.org Il 10/01/2013 15:40, Paolo Bonzini ha scritto: > virtio-s390 devices are not being reset when their bus is. To fix > this, add a reset method that forwards to virtio_reset. This is > only needed because of the "strange" modeling of virtio devices; > the ->vdev link is being handled manually rather than through qdev. > > Signed-off-by: Paolo Bonzini > --- > hw/s390-virtio-bus.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/hw/s390-virtio-bus.c b/hw/s390-virtio-bus.c > index 7e99175..1e3e4f0 100644 > --- a/hw/s390-virtio-bus.c > +++ b/hw/s390-virtio-bus.c > @@ -505,6 +505,13 @@ static int s390_virtio_busdev_init(DeviceState *dev) > return _info->init(_dev); > } > > +static void s390_virtio_busdev_reset(DeviceState *dev) > +{ > + VirtIOS390Device *_dev = (VirtIOS390Device *)dev; > + > + virtio_reset(_dev->vdev); > +} > + > static void virtio_s390_device_class_init(ObjectClass *klass, void *data) > { > DeviceClass *dc = DEVICE_CLASS(klass); > @@ -512,6 +519,7 @@ static void virtio_s390_device_class_init(ObjectClass *klass, void *data) > dc->init = s390_virtio_busdev_init; > dc->bus_type = TYPE_S390_VIRTIO_BUS; > dc->unplug = qdev_simple_unplug_cb; > + dc->reset = s390_virtio_busdev_reset; > } > > static TypeInfo virtio_s390_device_info = { > Alex, you missed this. Paolo