Go to file
Fiona Ebner fd53092e9b async snapshot: stop vCPU throttling after finishing
In the community forum, users reported issues about RCU stalls and
sluggish VMs after taking a snapshot with RAM in Proxmox VE [0]. Mario
was also experiencing similar issues from time to time and recently,
obtained a GDB stacktrace. The stacktrace showed that, in his case,
the vCPU threads were waiting in cpu_throttle_thread(). It is a good
guess that the issues in the forum could also be because of that.

From searching in the source code, it seems that migration is the only
user of the vCPU throttling functions in QEMU relevant for Proxmox VE
(the only other place where it is used is the Cocoa UI). In
particular, RAM migration will begin throttling vCPUs for
auto-converge.

In migration_iteration_finish() there is an unconditional call to
cpu_throttle_stop(), so do the same in the async snapshot code
specific to Proxmox VE.

It's not clear why the issue began to surface more prominently only
now, since the vCPU throttling was there since commit 070afca258
("migration: Dynamic cpu throttling for auto-converge") in QEMU
v2.10.0. However, there were a lot of changes in the migration code
between v8.1.5 and v9.0.2 and a few of them might have affected the
likelihood of cpu_throttle_set() being called, for example, 4e1871c450
("migration: Don't serialize devices in qemu_savevm_state_iterate()")

[0]: https://forum.proxmox.com/threads/153483

Reported-by: Mario Loderer <m.loderer@proxmox.com>
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
Tested-by: Mario Loderer <m.loderer@proxmox.com>
2024-11-10 11:20:39 +01:00
debian async snapshot: stop vCPU throttling after finishing 2024-11-10 11:20:39 +01:00
qemu@5ebde3b5c0 actually bump submodule to v9.0.2 2024-08-07 09:43:16 +02:00
.gitignore add .gitignore file 2023-05-22 12:05:14 +02:00
.gitmodules import stable-4 build files 2017-04-05 11:39:09 +02:00
backup.txt correct link to vma spec to new repository url 2020-01-14 11:18:52 +01:00
Makefile makefile: also filter 64-bit hppa ROM for QEMU 8.2 2024-04-26 14:13:53 +02:00
vma_spec.txt import stable-4 build files 2017-04-05 11:39:09 +02:00