qemu-irix/hw
Marcelo Tosatti 1eeacd413a kvmclock: clock should count only if vm is running
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>
(cherry picked from commit 00f4d64ee7)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
2013-08-12 17:21:01 -05:00
..
9pfs hw/9pfs: use O_NOFOLLOW for mapped readlink operation 2013-06-11 16:45:59 -05:00
acpi acpi: add dummy write function for acpi timer 2013-05-14 08:53:09 -05:00
alpha include: avoid useless includes of exec/ headers 2013-04-15 18:19:26 +02:00
arm arm/boot: Free dtb blob memory after use 2013-08-12 14:44:19 -05:00
audio audio: replace audio card configuration with default-configs 2013-04-29 12:16:37 -05:00
block Revert "pc: Kill the "use flash device for BIOS unless KVM" misfeature" 2013-05-13 09:52:43 -05:00
bt sysemu: avoid proliferation of include/ subdirectories 2013-04-15 18:19:25 +02:00
char virtio-serial: fix command line compatibility. 2013-05-03 12:05:15 -05:00
core qdev: fix get_fw_dev_path to support to add nothing to fw_dev_path 2013-06-11 17:30:29 -05:00
cpu target-i386: Move APIC to ICC bus 2013-05-01 13:06:07 +02:00
cris hw: move private headers to hw/ subdirectories. 2013-04-08 18:13:16 +02:00
display qxl: Fix QXLRam initialisation. 2013-08-12 14:58:42 -05:00
dma xilinx_axidma: Do not set DMA .notify to NULL after notify 2013-06-11 18:22:30 -05:00
gpio Remove unneeded type casts 2013-04-19 11:36:33 +02:00
i2c hw: move private headers to hw/ subdirectories. 2013-04-08 18:13:16 +02:00
i386 kvmclock: clock should count only if vm is running 2013-08-12 17:21:01 -05:00
ide ide: Set BSY bit during FLUSH 2013-06-11 17:01:20 -05:00
input vmmouse: QOM'ify 2013-04-29 08:27:50 -05:00
intc remove double semicolons 2013-05-12 13:25:55 +04:00
isa ich9: kill cmos_s3 2013-04-24 11:50:18 -05:00
lm32 qdev: Drop taddr properties 2013-04-20 17:54:52 +00:00
m68k hw: move char devices to hw/char/, configure via default-configs/ 2013-04-08 18:13:14 +02:00
microblaze Remove unneeded type casts 2013-04-19 11:36:33 +02:00
mips audio: enable PCI audio cards for all PCI-enabled targets 2013-04-29 12:17:06 -05:00
misc ivshmem: add missing error exit(2) 2013-06-17 16:40:54 -05:00
moxie Trivial grammar and spelling fixes 2013-05-01 20:55:21 +04:00
net vmxnet3: fix NICState cleanup 2013-06-11 18:03:56 -05:00
nvram pvpanic: pass configurable ioport to seabios 2013-04-30 10:30:01 -05:00
openrisc hw: move headers to include/ 2013-04-08 18:13:10 +02:00
pci virtio-scsi: forward scsibus for virtio-scsi-pci. 2013-08-12 15:11:49 -05:00
pci-bridge hw: move private headers to hw/ subdirectories. 2013-04-08 18:13:16 +02:00
pci-host q35: set fw_name 2013-06-12 15:39:40 -05:00
ppc PPC: e500: correct params->ram_size with ram_size 2013-05-06 17:22:48 +02:00
s390x s390/ipl: Fix boot order 2013-08-12 15:18:30 -05:00
scsi vhost-scsi: fix k->set_guest_notifiers() NULL dereference 2013-06-18 12:59:44 -05:00
sd Typo, spelling and grammatical fixes 2013-04-12 14:33:20 +02:00
sh4 arm: fix location of some include files 2013-04-15 15:16:01 +02:00
sparc qdev: Drop taddr properties 2013-04-20 17:54:52 +00:00
sparc64 sparc64: allow 64 IRQ lines 2013-04-27 10:35:30 +00:00
ssi hw: move SSI controllers to hw/ssi/, configure via default-configs/ 2013-04-08 18:13:13 +02:00
timer i.MX: implement a more correct version of EPIT timer. 2013-05-03 18:21:02 +01:00
tpm Move TPM passthrough specific command line options to backend structure 2013-04-23 10:40:40 -05:00
unicore32 console: add device link to QemuConsoles 2013-04-25 14:45:46 -05:00
usb usb-host-libusb: set USB_DEV_FLAG_IS_HOST 2013-08-12 15:15:49 -05:00
virtio virtio-rng: Fix crash with non-default backend 2013-06-18 13:03:12 -05:00
watchdog wdt_i6300esb: fix vmstate versioning 2013-06-18 14:38:30 -05:00
xen target-i386: Replace MSI_SPACE_SIZE with APIC_SPACE_SIZE 2013-05-01 13:04:19 +02:00
xtensa sysemu: avoid proliferation of include/ subdirectories 2013-04-15 18:19:25 +02:00
Makefile.objs virtio: simplify Makefile conditionals 2013-04-19 16:18:11 +02:00