On Wed, Jul 06, 2016 at 09:23:46AM +0000, Li, Liang Z wrote: > > On Wed, Jul 06, 2016 at 10:36:33AM +0800, Liang Li wrote: > > > After live migration, 'guest-stats' can't get the expected memory > > > status in the guest. This issue is caused by commit 4eae2a657d. > > > The value of 's->stats_vq_elem' will be NULL after live migration, and > > > the check in the function 'balloon_stats_poll_cb()' will prevent the > > > 'virtio_notify()' from executing. So guest will not update the memory > > > status. > > > > > > Commit 4eae2a657d is doing the right thing, but 's->stats_vq_elem' > > > should be treated as part of balloon device state and migrated to > > > destination if it's not NULL to make everything works well. > > > > > > Signed-off-by: Liang Li <liang.z...@intel.com> > > > Suggested-by: Paolo Bonzini <pbonz...@redhat.com> > > > Cc: Michael S. Tsirkin <m...@redhat.com> > > > Cc: Ladi Prosek <lpro...@redhat.com> > > > Cc: Paolo Bonzini <pbonz...@redhat.com> > > > > I agree there's an issue but we don't change versions anymore. > > Breaking migrations for everyone is also not nice. > > > > How about queueing virtio_balloon_receive_stats so it will get invoked when > > vm starts? > > > > Could you give more explanation about how it works? I can't catch you. > > Thanks! > Liang
virtqueue_discard before migration virtio_balloon_receive_stats after migration -- MST