Message ID | 1364421586-29857-4-git-send-email-nab@linux-iscsi.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Wed, Mar 27, 2013 at 09:59:46PM +0000, Nicholas A. Bellinger wrote: > From: Nicholas Bellinger <nab@linux-iscsi.org> > > This patch fixes a bug where vhost_verify_ring_mappings() could be > called after vhost_dev_unassign_memory() has been called during > vhost_set_memory(..., add=false). > Sorry, I NAK'd this already. Is a memory including the rings unassigned then? How can this happen? We need to debug wht's going on here. > This appears to be fallout from when dev->started = true assignment > occurs before vhost_set_memory(..., add=false) is called in: > > commit 24f4fe345c1b80bab1ee18573914123d8028a9e6 > Author: Michael S. Tsirkin <mst@redhat.com> > Date: Tue Dec 25 17:41:07 2012 +0200 > > vhost: set started flag while start is in progress > > Cc: Michael S. Tsirkin <mst@redhat.com> > Cc: Asias He <asias@redhat.com> > Cc: Paolo Bonzini <pbonzini@redhat.com> > Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org> -net seems to work fine with that patch. > --- > hw/vhost.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/hw/vhost.c b/hw/vhost.c > index 4d6aee3..687a689 100644 > --- a/hw/vhost.c > +++ b/hw/vhost.c > @@ -421,7 +421,7 @@ static void vhost_set_memory(MemoryListener *listener, > return; > } > > - if (dev->started) { > + if (dev->started && add) { > r = vhost_verify_ring_mappings(dev, start_addr, size); > assert(r >= 0); > } > -- > 1.7.2.5 -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/hw/vhost.c b/hw/vhost.c index 4d6aee3..687a689 100644 --- a/hw/vhost.c +++ b/hw/vhost.c @@ -421,7 +421,7 @@ static void vhost_set_memory(MemoryListener *listener, return; } - if (dev->started) { + if (dev->started && add) { r = vhost_verify_ring_mappings(dev, start_addr, size); assert(r >= 0); }