aboutsummaryrefslogtreecommitdiff
path: root/scripts/qapi/features.py
diff options
context:
space:
mode:
authorPeter Xu <peterx@redhat.com>2025-01-14 18:07:33 -0500
committerFabiano Rosas <farosas@suse.de>2025-01-29 11:56:40 -0300
commit9cde9b435a7d14ce39331935f4dfea4778400048 (patch)
tree432800507631e6ff1304d794b7443ae836374169 /scripts/qapi/features.py
parenta55090db2ac16aa2ee9d25940e11ca5467af661b (diff)
downloadqemu-9cde9b435a7d14ce39331935f4dfea4778400048.zip
qemu-9cde9b435a7d14ce39331935f4dfea4778400048.tar.gz
qemu-9cde9b435a7d14ce39331935f4dfea4778400048.tar.bz2
migration: Optimize postcopy on downtime by avoiding JSON writer
postcopy_start() is the entry function that postcopy is destined to start. It also means QEMU source will not dump VM description, aka, the JSON writer is garbage now. We can leave that to be cleaned up when migration completes, however when with the JSON writer object being present, vmstate_save() will still try to construct the JSON objects for the VM descriptions, even though it'll never be used later if it's postcopy. To save those cycles, release the JSON writer earlier for postcopy. Then vmstate_save() later will be smart enough to skip the JSON object constructions completely. It can logically reduce downtime because all such JSON constructions happen during postcopy blackout. Signed-off-by: Peter Xu <peterx@redhat.com> Tested-by: Jiri Denemark <jdenemar@redhat.com> Reviewed-by: Juraj Marcin <jmarcin@redhat.com> Link: https://lore.kernel.org/r/20250114230746.3268797-4-peterx@redhat.com Signed-off-by: Fabiano Rosas <farosas@suse.de>
Diffstat (limited to 'scripts/qapi/features.py')
0 files changed, 0 insertions, 0 deletions