<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bwlp/qemu.git/include/migration, branch master</title>
<subtitle>Experimental fork of QEMU with video encoding patches</subtitle>
<id>https://git.openslx.org/bwlp/qemu.git/atom/include/migration?h=master</id>
<link rel='self' href='https://git.openslx.org/bwlp/qemu.git/atom/include/migration?h=master'/>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/'/>
<updated>2022-03-02T18:20:45+00:00</updated>
<entry>
<title>migration: Remove load_state_old and minimum_version_id_old</title>
<updated>2022-03-02T18:20:45+00:00</updated>
<author>
<name>Peter Maydell</name>
</author>
<published>2022-02-15T17:57:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=18621987027b1800f315fb9e29967e7b5398ef6f'/>
<id>urn:sha1:18621987027b1800f315fb9e29967e7b5398ef6f</id>
<content type='text'>
There are no longer any VMStateDescription structs in the tree which
use the load_state_old support for custom handling of incoming
migration from very old QEMU.  Remove the mechanism entirely.

This includes removing one stray useless setting of
minimum_version_id_old in a VMStateDescription with no load_state_old
function, which crept in after the global weeding-out of them in
commit 17e313406126.

Signed-off-by: Peter Maydell &lt;peter.maydell@linaro.org&gt;
Message-Id: &lt;20220215175705.3846411-1-peter.maydell@linaro.org&gt;
Reviewed-by: Dr. David Alan Gilbert &lt;dgilbert@redhat.com&gt;
Reviewed-by: Francisco Iglesias &lt;francisco.iglesias@xilinx.com&gt;
Reviewed-by: Alistair Francis &lt;alistair.francis@wdc.com&gt;
Signed-off-by: Dr. David Alan Gilbert &lt;dgilbert@redhat.com&gt;
</content>
</entry>
<entry>
<title>Fixed a QEMU hang when guest poweroff in COLO mode</title>
<updated>2021-12-15T09:31:42+00:00</updated>
<author>
<name>Rao, Lei</name>
</author>
<published>2021-11-11T02:11:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=795969ab1fe6d5a0f524be92e2e1ecd13f1873eb'/>
<id>urn:sha1:795969ab1fe6d5a0f524be92e2e1ecd13f1873eb</id>
<content type='text'>
When the PVM guest poweroff, the COLO thread may wait a semaphore
in colo_process_checkpoint().So, we should wake up the COLO thread
before migration shutdown.

Signed-off-by: Lei Rao &lt;lei.rao@intel.com&gt;
Reviewed-by: Zhang Chen &lt;chen.zhang@intel.com&gt;
Reviewed-by: Juan Quintela &lt;quintela@redhat.com&gt;
Signed-off-by: Juan Quintela &lt;quintela@redhat.com&gt;
</content>
</entry>
<entry>
<title>migration: Add migrate_add_blocker_internal()</title>
<updated>2021-11-01T21:56:44+00:00</updated>
<author>
<name>Peter Xu</name>
</author>
<published>2021-09-22T16:20:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=60fd680193119e7e4d50eccff7b55a0aadc934ab'/>
<id>urn:sha1:60fd680193119e7e4d50eccff7b55a0aadc934ab</id>
<content type='text'>
An internal version that removes -only-migratable implications.  It can be used
for temporary migration blockers like dump-guest-memory.

Reviewed-by: Marc-André Lureau &lt;marcandre.lureau@redhat.com&gt;
Reviewed-by: Juan Quintela &lt;quintela@redhat.com&gt;
Signed-off-by: Peter Xu &lt;peterx@redhat.com&gt;
Signed-off-by: Juan Quintela &lt;quintela@redhat.com&gt;
</content>
</entry>
<entry>
<title>vfio: Support for RamDiscardManager in the vIOMMU case</title>
<updated>2021-07-08T19:54:45+00:00</updated>
<author>
<name>David Hildenbrand</name>
</author>
<published>2021-04-13T09:55:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=0fd7616e0f1171b8149bb71f59e23ab048a8df83'/>
<id>urn:sha1:0fd7616e0f1171b8149bb71f59e23ab048a8df83</id>
<content type='text'>
vIOMMU support works already with RamDiscardManager as long as guests only
map populated memory. Both, populated and discarded memory is mapped
into &amp;address_space_memory, where vfio_get_xlat_addr() will find that
memory, to create the vfio mapping.

Sane guests will never map discarded memory (e.g., unplugged memory
blocks in virtio-mem) into an IOMMU - or keep it mapped into an IOMMU while
memory is getting discarded. However, there are two cases where a malicious
guests could trigger pinning of more memory than intended.

One case is easy to handle: the guest trying to map discarded memory
into an IOMMU.

The other case is harder to handle: the guest keeping memory mapped in
the IOMMU while it is getting discarded. We would have to walk over all
mappings when discarding memory and identify if any mapping would be a
violation. Let's keep it simple for now and print a warning, indicating
that setting RLIMIT_MEMLOCK can mitigate such attacks.

We have to take care of incoming migration: at the point the
IOMMUs get restored and start creating mappings in vfio, RamDiscardManager
implementations might not be back up and running yet: let's add runstate
priorities to enforce the order when restoring.

Acked-by: Alex Williamson &lt;alex.williamson@redhat.com&gt;
Reviewed-by: Alex Williamson &lt;alex.williamson@redhat.com&gt;
Acked-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Cc: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
Cc: "Michael S. Tsirkin" &lt;mst@redhat.com&gt;
Cc: Alex Williamson &lt;alex.williamson@redhat.com&gt;
Cc: Dr. David Alan Gilbert &lt;dgilbert@redhat.com&gt;
Cc: Igor Mammedov &lt;imammedo@redhat.com&gt;
Cc: Pankaj Gupta &lt;pankaj.gupta.linux@gmail.com&gt;
Cc: Peter Xu &lt;peterx@redhat.com&gt;
Cc: Auger Eric &lt;eric.auger@redhat.com&gt;
Cc: Wei Yang &lt;richard.weiyang@linux.alibaba.com&gt;
Cc: teawater &lt;teawaterz@linux.alibaba.com&gt;
Cc: Marek Kedzierski &lt;mkedzier@redhat.com&gt;
Signed-off-by: David Hildenbrand &lt;david@redhat.com&gt;
Message-Id: &lt;20210413095531.25603-10-david@redhat.com&gt;
Signed-off-by: Eduardo Habkost &lt;ehabkost@redhat.com&gt;
</content>
</entry>
<entry>
<title>cpu: Move CPUClass::vmsd to SysemuCPUOps</title>
<updated>2021-05-26T22:33:59+00:00</updated>
<author>
<name>Philippe Mathieu-Daudé</name>
</author>
<published>2021-05-17T10:51:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=feece4d07021576a6037adfd597598851cf32bf0'/>
<id>urn:sha1:feece4d07021576a6037adfd597598851cf32bf0</id>
<content type='text'>
Migration is specific to system emulation.

- Move the CPUClass::vmsd field to SysemuCPUOps,
- restrict VMSTATE_CPU() macro to sysemu,
- vmstate_dummy is now unused, remove it.

Signed-off-by: Philippe Mathieu-Daudé &lt;f4bug@amsat.org&gt;
Reviewed-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
Message-Id: &lt;20210517105140.1062037-16-f4bug@amsat.org&gt;
Signed-off-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
</content>
</entry>
<entry>
<title>migrate/ram: remove "ram_bulk_stage" and "fpo_enabled"</title>
<updated>2021-05-13T17:21:13+00:00</updated>
<author>
<name>David Hildenbrand</name>
</author>
<published>2021-02-16T10:50:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=1a37352277763220739290c689867540ec193d06'/>
<id>urn:sha1:1a37352277763220739290c689867540ec193d06</id>
<content type='text'>
The bulk stage is kind of weird: migration_bitmap_find_dirty() will
indicate a dirty page, however, ram_save_host_page() will never save it, as
migration_bitmap_clear_dirty() detects that it is not dirty.

We already fill the bitmap in ram_list_init_bitmaps() with ones, marking
everything dirty - it didn't used to be that way, which is why we needed
an explicit first bulk stage.

Let's simplify: make the bitmap the single source of thuth. Explicitly
handle the "xbzrle_enabled after first round" case.

Regarding XBZRLE (implicitly handled via "ram_bulk_stage = false" right
now), there is now a slight change in behavior:
- Colo: When starting, it will be disabled (was implicitly enabled)
  until the first round actually finishes.
- Free page hinting: When starting, XBZRLE will be disabled (was implicitly
  enabled) until the first round actually finished.
- Snapshots: When starting, XBZRLE will be disabled. We essentially only
  do a single run, so I guess it will never actually get disabled.

Postcopy seems to indirectly disable it in ram_save_page(), so there
shouldn't be really any change.

Cc: "Michael S. Tsirkin" &lt;mst@redhat.com&gt;
Cc: Juan Quintela &lt;quintela@redhat.com&gt;
Cc: "Dr. David Alan Gilbert" &lt;dgilbert@redhat.com&gt;
Cc: Andrey Gruzdev &lt;andrey.gruzdev@virtuozzo.com&gt;
Cc: Peter Xu &lt;peterx@redhat.com&gt;
Signed-off-by: David Hildenbrand &lt;david@redhat.com&gt;
Message-Id: &lt;20210216105039.40680-1-david@redhat.com&gt;
Signed-off-by: Dr. David Alan Gilbert &lt;dgilbert@redhat.com&gt;
</content>
</entry>
<entry>
<title>migration: Inhibit virtio-balloon for the duration of background snapshot</title>
<updated>2021-04-06T17:56:01+00:00</updated>
<author>
<name>Andrey Gruzdev</name>
</author>
<published>2021-04-01T09:22:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=1a8e44a89f1976e06300393337f78d561f95b339'/>
<id>urn:sha1:1a8e44a89f1976e06300393337f78d561f95b339</id>
<content type='text'>
The same thing as for incoming postcopy - we cannot deal with concurrent
RAM discards when using background snapshot feature in outgoing migration.

Fixes: 8518278a6af589ccc401f06e35f171b1e6fae800 (migration: implementation
  of background snapshot thread)
Signed-off-by: Andrey Gruzdev &lt;andrey.gruzdev@virtuozzo.com&gt;
Reported-by: David Hildenbrand &lt;david@redhat.com&gt;
Reviewed-by: David Hildenbrand &lt;david@redhat.com&gt;
Message-Id: &lt;20210401092226.102804-3-andrey.gruzdev@virtuozzo.com&gt;
Signed-off-by: Dr. David Alan Gilbert &lt;dgilbert@redhat.com&gt;
</content>
</entry>
<entry>
<title>migration: introduce a delete_snapshot wrapper</title>
<updated>2021-02-08T11:19:51+00:00</updated>
<author>
<name>Daniel P. Berrangé</name>
</author>
<published>2021-02-04T12:48:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=bef7e9e2c7549696f7ddbe3a1dd236531d2af518'/>
<id>urn:sha1:bef7e9e2c7549696f7ddbe3a1dd236531d2af518</id>
<content type='text'>
Make snapshot deletion consistent with the snapshot save
and load commands by using a wrapper around the blockdev
layer. The main difference is that we get upfront validation
of the passed in device list (if any).

Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
Signed-off-by: Daniel P. Berrangé &lt;berrange@redhat.com&gt;
Message-Id: &lt;20210204124834.774401-10-berrange@redhat.com&gt;
Signed-off-by: Dr. David Alan Gilbert &lt;dgilbert@redhat.com&gt;
</content>
</entry>
<entry>
<title>migration: wire up support for snapshot device selection</title>
<updated>2021-02-08T11:19:51+00:00</updated>
<author>
<name>Daniel P. Berrangé</name>
</author>
<published>2021-02-04T12:48:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=f1a9fcdd0197ed5ecfee187f8834e7b609d596a6'/>
<id>urn:sha1:f1a9fcdd0197ed5ecfee187f8834e7b609d596a6</id>
<content type='text'>
Modify load_snapshot/save_snapshot to accept the device list and vmstate
node name parameters previously added to the block layer.

Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
Signed-off-by: Daniel P. Berrangé &lt;berrange@redhat.com&gt;
Message-Id: &lt;20210204124834.774401-9-berrange@redhat.com&gt;
Signed-off-by: Dr. David Alan Gilbert &lt;dgilbert@redhat.com&gt;
</content>
</entry>
<entry>
<title>migration: control whether snapshots are ovewritten</title>
<updated>2021-02-08T11:19:51+00:00</updated>
<author>
<name>Daniel P. Berrangé</name>
</author>
<published>2021-02-04T12:48:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=f781f84189e3e325da0b0c6a241b77d54b7ea26c'/>
<id>urn:sha1:f781f84189e3e325da0b0c6a241b77d54b7ea26c</id>
<content type='text'>
The traditional HMP "savevm" command will overwrite an existing snapshot
if it already exists with the requested name. This new flag allows this
to be controlled allowing for safer behaviour with a future QMP command.

Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
Signed-off-by: Daniel P. Berrangé &lt;berrange@redhat.com&gt;
Message-Id: &lt;20210204124834.774401-8-berrange@redhat.com&gt;
Signed-off-by: Dr. David Alan Gilbert &lt;dgilbert@redhat.com&gt;
</content>
</entry>
</feed>
