virtio-serial: add enable_backend callback
commit55289fb036481396466d7825fa01d829c891108c
authorPavel Butsykin <pbutsykin@virtuozzo.com>
Tue, 19 Sep 2017 12:07:33 +0000 (19 15:07 +0300)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 21 Sep 2017 09:51:49 +0000 (21 11:51 +0200)
tree3a3913a0815b31982f08562fd1fefb3a4b01b509
parentb62b7ed0fc9c58e373b8946c9bd2e193be98dae6
virtio-serial: add enable_backend callback

We should guarantee that RAM will not be modified while VM has a stopped
state, otherwise it can lead to negative consequences during post-copy
migration. In RUN_STATE_FINISH_MIGRATE step, it's expected that RAM on
source side will not be modified as this could lead to non-consistent vm state
on the destination side. Also RAM access during postcopy-ram migration with
enabled release-ram capability can lead to sad consequences.

Let's add enable_backend() callback to avoid undesirable virtioqueue changes
in the guest memory.

Signed-off-by: Pavel Butsykin <pbutsykin@virtuozzo.com>
Message-Id: <20170919120733.22020-1-pbutsykin@virtuozzo.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
hw/char/virtio-console.c
hw/char/virtio-serial-bus.c
include/hw/virtio/virtio-serial.h