This series has been tested successfully by QE. Start a VM with a 8G
virtio-mem device and start memtester on it. Enable x-ignore-shared
capability and then do migration. Migration was successful and
virtio-mem can be resized as usual.
Tested-by: Mario Casquero <mcasquer@redhat.com>
BR,
Mario
On Tue, Jun 20, 2023 at 3:05 PM David Hildenbrand <david@redhat.com> wrote:
>
> Stumbling over "x-ignore-shared" migration support for virtio-mem on
> my todo list, I remember talking to Dave G. a while ago about how
> ram_block_discard_range() in MAP_PIRVATE file mappings is possibly
> harmful when the file is used somewhere else -- for example, with VM
> templating in multiple VMs.
>
> This series adds a warning to ram_block_discard_range() in that problematic
> case and adds "x-ignore-shared" migration support for virtio-mem, which
> is pretty straight-forward. The last patch also documents how VM templating
> interacts with virtio-mem.
>
> Cc: "Michael S. Tsirkin" <mst@redhat.com>
> Cc: Juan Quintela <quintela@redhat.com>
> Cc: Peter Xu <peterx@redhat.com>
> Cc: Leonardo Bras <leobras@redhat.com>
> Cc: Paolo Bonzini <pbonzini@redhat.com>
> Cc: "Philippe Mathieu-Daudé" <philmd@linaro.org>
> Cc: Peng Tao <tao.peng@linux.alibaba.com>
>
> David Hildenbrand (4):
> softmmu/physmem: Warn with ram_block_discard_range() on MAP_PRIVATE
> file mapping
> virtio-mem: Skip most of virtio_mem_unplug_all() without plugged
> memory
> migration/ram: Expose ramblock_is_ignored() as
> migrate_ram_is_ignored()
> virtio-mem: Support "x-ignore-shared" migration
>
> hw/virtio/virtio-mem.c | 67 ++++++++++++++++++++++++++++------------
> include/migration/misc.h | 1 +
> migration/postcopy-ram.c | 2 +-
> migration/ram.c | 14 ++++-----
> migration/ram.h | 3 +-
> softmmu/physmem.c | 18 +++++++++++
> 6 files changed, 76 insertions(+), 29 deletions(-)
>
> --
> 2.40.1
>
>