mirror of
https://git.proxmox.com/git/pve-qemu
synced 2025-10-04 08:33:09 +00:00
![]() 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> |
||
---|---|---|
debian | ||
qemu@5ebde3b5c0 | ||
.gitignore | ||
.gitmodules | ||
backup.txt | ||
Makefile | ||
vma_spec.txt |