kvmclock should not count while vm is paused, because: 1) if the vm is paused for long periods, timekeeping math can overflow while converting the (large) clocksource delta to nanoseconds. 2) Users rely on CLOCK_MONOTONIC to count run time, that is, time which OS has been in a runnable state (see CLOCK_BOOTTIME). Change kvmclock driver so as to save clock value when vm transitions from runnable to stopped state, and to restore clock value from stopped to runnable transition. Cc: qemu-stable@nongnu.org Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com> Signed-off-by: Gleb Natapov <gleb@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> |
||
|---|---|---|
| .. | ||
| kvm | ||
| Makefile.objs | ||
| kvmvapic.c | ||
| multiboot.c | ||
| multiboot.h | ||
| pc.c | ||
| pc_piix.c | ||
| pc_q35.c | ||
| smbios.c | ||
| xen_domainbuild.c | ||
| xen_domainbuild.h | ||
| xen_machine_pv.c | ||