From: "Michael S. Tsirkin" <mst@redhat.com>
To: Cornelia Huck <cornelia.huck@de.ibm.com>
Cc: borntraeger@de.ibm.com, jasowang@redhat.com, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 1/4] virtio: ring sizes vs. reset
Date: Thu, 10 Sep 2015 13:43:46 +0300 [thread overview]
Message-ID: <20150910134252-mutt-send-email-mst@redhat.com> (raw)
In-Reply-To: <20150910122254.090917f6.cornelia.huck@de.ibm.com>
On Thu, Sep 10, 2015 at 12:22:54PM +0200, Cornelia Huck wrote:
> On Thu, 10 Sep 2015 12:02:44 +0300
> "Michael S. Tsirkin" <mst@redhat.com> wrote:
>
> > On Fri, Sep 04, 2015 at 10:54:26AM +0200, Cornelia Huck wrote:
> > > We allow guests to change the size of the virtqueue rings by supplying
> > > a number of buffers that is different from the number of buffers the
> > > device was initialized with. Current code has some problems, however,
> > > since reset does not reset the ringsizes to the default values (as this
> > > is not saved anywhere).
> > >
> > > Let's extend the core code to keep track of the default ringsizes and
> > > migrate them once the guest changed them for any of the virtqueues
> > > for a device.
> > >
> > > Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
> > > ---
> > > hw/virtio/virtio.c | 63 ++++++++++++++++++++++++++++++++++++++++++++++
> > > include/hw/virtio/virtio.h | 1 +
> > > 2 files changed, 64 insertions(+)
> > >
>
> > > diff --git a/include/hw/virtio/virtio.h b/include/hw/virtio/virtio.h
> > > index cccae89..29870c8 100644
> > > --- a/include/hw/virtio/virtio.h
> > > +++ b/include/hw/virtio/virtio.h
> > > @@ -90,6 +90,7 @@ struct VirtIODevice
> > > VMChangeStateEntry *vmstate;
> > > char *bus_name;
> > > uint8_t device_endian;
> > > + bool non_default_ringsizes;
> >
> >
> > Let's not try to track this separately. Just go over
> > rings before migration, and check whether guest changed
> > anything.
>
> I dunno. If we try to figure this out while doing migration, we'll need
> to go over the rings and check whether any of them has changed, then go
> over the rings again to save the values - while here, we just set this
> bool once when the driver changes the value, check once to find out
> whether we need to migrate the values and reset once.
Then restore it on load ...
State is worse than stateless, without a state you are
never out of sync.
> >
> > > QLIST_HEAD(, VirtQueue) *vector_queues;
> > > };
> > >
> > > --
> > > 2.3.8
> >
next prev parent reply other threads:[~2015-09-10 10:43 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-04 8:54 [Qemu-devel] [PATCH 0/4] virtio-1/virtio-ccw related patches Cornelia Huck
2015-09-04 8:54 ` [Qemu-devel] [PATCH 1/4] virtio: ring sizes vs. reset Cornelia Huck
2015-09-10 9:02 ` Michael S. Tsirkin
2015-09-10 10:22 ` Cornelia Huck
2015-09-10 10:43 ` Michael S. Tsirkin [this message]
2015-09-10 11:48 ` [Qemu-devel] [PATCH v2] " Cornelia Huck
2015-09-11 2:53 ` Jason Wang
2015-09-04 8:54 ` [Qemu-devel] [PATCH 2/4] virtio-ccw: support ring size changes Cornelia Huck
2015-09-04 8:54 ` [Qemu-devel] [PATCH 3/4] virtio-ccw: feature bits > 31 handling Cornelia Huck
2015-09-07 10:50 ` David Hildenbrand
2015-09-04 8:54 ` [Qemu-devel] [PATCH 4/4] virtio-ccw: enable virtio-1 Cornelia Huck
2015-09-10 9:07 ` Michael S. Tsirkin
2015-09-10 9:11 ` Cornelia Huck
2015-09-10 9:22 ` Michael S. Tsirkin
2015-09-10 10:29 ` Cornelia Huck
2015-09-11 13:11 ` Cornelia Huck
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150910134252-mutt-send-email-mst@redhat.com \
--to=mst@redhat.com \
--cc=borntraeger@de.ibm.com \
--cc=cornelia.huck@de.ibm.com \
--cc=jasowang@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.