From: "Michael S. Tsirkin" <mst@redhat.com>
To: Josh Durgin <josh.durgin@dreamhost.com>
Cc: qemu-devel@nongnu.org, Bruce Rogers <brogers@suse.com>
Subject: Re: [Qemu-devel] [PATCH] vhost-net: Move asserts to after check for end < start
Date: Sun, 1 Apr 2012 11:54:48 +0300 [thread overview]
Message-ID: <20120401085448.GA22071@redhat.com> (raw)
In-Reply-To: <4F766A22.8030606@dreamhost.com>
On Fri, Mar 30, 2012 at 07:21:22PM -0700, Josh Durgin wrote:
> On 12/16/2011 12:33 PM, Bruce Rogers wrote:
> >When migrating a vm using vhost-net we hit the following assertion:
> >
> >qemu-kvm: /usr/src/packages/BUILD/qemu-kvm-0.15.1/hw/vhost.c:30:
> >vhost_dev_sync_region: Assertion `start / (0x1000 * (8 *
> >sizeof(vhost_log_chunk_t)))< dev->log_size' failed.
>
> I consistently hit this assert while testing live migration with
> qemu 1.0.1 and the master branch. Applying this patch allowed live
> migration to complete successfully. Maybe it could be reviewed and
> merged?
Yes, thanks for the reminder. I've applied a patch by Alex Williamson that
addresses this and other crashes.
> >The cases which the end< start check is intended to catch, such as
> >for vga video memory, will also likely trigger the assertion.
> >Reorder the code to handle this correctly.
> >
> >Signed-off-by: Bruce Rogers<brogers@suse.com>
> >---
> > hw/vhost.c | 4 ++--
> > 1 files changed, 2 insertions(+), 2 deletions(-)
> >
> >diff --git a/hw/vhost.c b/hw/vhost.c
> >index 0870cb7..7309f71 100644
> >--- a/hw/vhost.c
> >+++ b/hw/vhost.c
> >@@ -26,11 +26,11 @@ static void vhost_dev_sync_region(struct vhost_dev *dev,
> > vhost_log_chunk_t *to = dev->log + end / VHOST_LOG_CHUNK + 1;
> > uint64_t addr = (start / VHOST_LOG_CHUNK) * VHOST_LOG_CHUNK;
> >
> >- assert(end / VHOST_LOG_CHUNK< dev->log_size);
> >- assert(start / VHOST_LOG_CHUNK< dev->log_size);
> > if (end< start) {
> > return;
> > }
> >+ assert(end / VHOST_LOG_CHUNK< dev->log_size);
> >+ assert(start / VHOST_LOG_CHUNK< dev->log_size);
> > for (;from< to; ++from) {
> > vhost_log_chunk_t log;
> > int bit;
prev parent reply other threads:[~2012-04-01 8:54 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-16 20:33 [Qemu-devel] [PATCH] vhost-net: Move asserts to after check for end < start Bruce Rogers
2012-03-31 2:21 ` Josh Durgin
2012-04-01 8:54 ` Michael S. Tsirkin [this message]
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=20120401085448.GA22071@redhat.com \
--to=mst@redhat.com \
--cc=brogers@suse.com \
--cc=josh.durgin@dreamhost.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).