[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-stable] [PATCH v2 1/2] virtio: Add function to check whether b
From: |
Michael S. Tsirkin |
Subject: |
Re: [Qemu-stable] [PATCH v2 1/2] virtio: Add function to check whether backend supports VIRTIO_1 |
Date: |
Fri, 9 Sep 2016 20:47:35 +0300 |
On Fri, Sep 09, 2016 at 08:00:31PM +0300, Marcel Apfelbaum wrote:
> On 09/09/2016 04:10 PM, Maxime Coquelin wrote:
> > This patch adds virtio_test_backend_virtio_1() function to
> > check whether backend supports VIRTIO_F_VERSION_1 before the
> > negociation takes place.
> >
> > Cc: Cornelia Huck <address@hidden>
> > Cc: Marcel Apfelbaum <address@hidden>
> > Cc: Michael S. Tsirkin <address@hidden>
> > Cc: address@hidden
> > Signed-off-by: Maxime Coquelin <address@hidden>
> > ---
> > hw/virtio/virtio.c | 13 +++++++++++++
> > include/hw/virtio/virtio.h | 1 +
> > 2 files changed, 14 insertions(+)
> >
> > diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c
> > index 74c085c..8b30b69 100644
> > --- a/hw/virtio/virtio.c
> > +++ b/hw/virtio/virtio.c
> > @@ -1481,6 +1481,19 @@ void virtio_vmstate_save(QEMUFile *f, void *opaque,
> > size_t size)
> > virtio_save(VIRTIO_DEVICE(opaque), f);
> > }
> >
> > +bool virtio_test_backend_virtio_1(VirtIODevice *vdev, Error **errp)
> > +{
> > + VirtioDeviceClass *k = VIRTIO_DEVICE_GET_CLASS(vdev);
> > + uint64_t feature;
> > +
>
> I would set "feature = 0" even if doesn't really matter.
> Anyway:
>
> Reviewed-by: Marcel Apfelbaum <address@hidden>
>
> Thanks,
> Marcel
why wouldn't it matter? Looks like an uninitialized variable to me.
> > + virtio_add_feature(&feature, VIRTIO_F_VERSION_1);
> > +
> > + assert(k->get_features != NULL);
> > + feature = k->get_features(vdev, feature, errp);
> > +
> > + return virtio_has_feature(feature, VIRTIO_F_VERSION_1);
> > +}
> > +
> > static int virtio_set_features_nocheck(VirtIODevice *vdev, uint64_t val)
> > {
> > VirtioDeviceClass *k = VIRTIO_DEVICE_GET_CLASS(vdev);
> > diff --git a/include/hw/virtio/virtio.h b/include/hw/virtio/virtio.h
> > index d2490c1..3a31754 100644
> > --- a/include/hw/virtio/virtio.h
> > +++ b/include/hw/virtio/virtio.h
> > @@ -235,6 +235,7 @@ int virtio_set_status(VirtIODevice *vdev, uint8_t val);
> > void virtio_reset(void *opaque);
> > void virtio_update_irq(VirtIODevice *vdev);
> > int virtio_set_features(VirtIODevice *vdev, uint64_t val);
> > +bool virtio_test_backend_virtio_1(VirtIODevice *vdev, Error **errp);
> >
> > /* Base devices. */
> > typedef struct VirtIOBlkConf VirtIOBlkConf;
> >