Revision 313f636d5c490c9741d3f750dc8da33029edbc6b authored by David Matlack on 09 March 2016, 00:19:44 UTC, committed by Paolo Bonzini on 09 March 2016, 10:54:14 UTC
When growing halt-polling, there is no check that the poll time exceeds
the limit. It's possible for vcpu->halt_poll_ns grow once past
halt_poll_ns, and stay there until a halt which takes longer than
vcpu->halt_poll_ns. For example, booting a Linux guest with
halt_poll_ns=11000:

 ... kvm:kvm_halt_poll_ns: vcpu 0: halt_poll_ns 0 (shrink 10000)
 ... kvm:kvm_halt_poll_ns: vcpu 0: halt_poll_ns 10000 (grow 0)
 ... kvm:kvm_halt_poll_ns: vcpu 0: halt_poll_ns 20000 (grow 10000)

Signed-off-by: David Matlack <dmatlack@google.com>
Fixes: aca6ff29c4063a8d467cdee241e6b3bf7dc4a171
Cc: stable@vger.kernel.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
1 parent 9522b37
History
File Mode Size
Kconfig -rw-r--r-- 3.6 KB
Makefile -rw-r--r-- 2.8 KB
alphascale_asm9260-icoll.h -rw-r--r-- 3.7 KB
exynos-combiner.c -rw-r--r-- 6.9 KB
irq-armada-370-xp.c -rw-r--r-- 16.1 KB
irq-atmel-aic-common.c -rw-r--r-- 6.1 KB
irq-atmel-aic-common.h -rw-r--r-- 1.2 KB
irq-atmel-aic.c -rw-r--r-- 7.1 KB
irq-atmel-aic5.c -rw-r--r-- 9.5 KB
irq-bcm2835.c -rw-r--r-- 7.4 KB
irq-bcm2836.c -rw-r--r-- 8.9 KB
irq-bcm7038-l1.c -rw-r--r-- 8.2 KB
irq-bcm7120-l2.c -rw-r--r-- 9.2 KB
irq-brcmstb-l2.c -rw-r--r-- 5.6 KB
irq-clps711x.c -rw-r--r-- 6.2 KB
irq-crossbar.c -rw-r--r-- 8.4 KB
irq-digicolor.c -rw-r--r-- 3.2 KB
irq-dw-apb-ictl.c -rw-r--r-- 4.3 KB
irq-gic-common.c -rw-r--r-- 3.3 KB
irq-gic-common.h -rw-r--r-- 1.2 KB
irq-gic-realview.c -rw-r--r-- 1.4 KB
irq-gic-v2m.c -rw-r--r-- 12.7 KB
irq-gic-v3-its-pci-msi.c -rw-r--r-- 3.5 KB
irq-gic-v3-its-platform-msi.c -rw-r--r-- 2.8 KB
irq-gic-v3-its.c -rw-r--r-- 38.2 KB
irq-gic-v3.c -rw-r--r-- 21.8 KB
irq-gic.c -rw-r--r-- 35.5 KB
irq-hip04.c -rw-r--r-- 10.7 KB
irq-i8259.c -rw-r--r-- 10.1 KB
irq-imgpdc.c -rw-r--r-- 13.4 KB
irq-imx-gpcv2.c -rw-r--r-- 6.2 KB
irq-ingenic.c -rw-r--r-- 4.5 KB
irq-keystone.c -rw-r--r-- 5.9 KB
irq-mbigen.c -rw-r--r-- 7.3 KB
irq-metag-ext.c -rw-r--r-- 24.6 KB
irq-metag.c -rw-r--r-- 9.3 KB
irq-mips-cpu.c -rw-r--r-- 4.3 KB
irq-mips-gic.c -rw-r--r-- 22.8 KB
irq-mmp.c -rw-r--r-- 13.3 KB
irq-moxart.c -rw-r--r-- 2.9 KB
irq-mtk-sysirq.c -rw-r--r-- 4.3 KB
irq-mxs.c -rw-r--r-- 6.6 KB
irq-nvic.c -rw-r--r-- 3.8 KB
irq-omap-intc.c -rw-r--r-- 9.8 KB
irq-or1k-pic.c -rw-r--r-- 4.5 KB
irq-orion.c -rw-r--r-- 5.7 KB
irq-pic32-evic.c -rw-r--r-- 8.3 KB
irq-renesas-h8300h.c -rw-r--r-- 1.9 KB
irq-renesas-h8s.c -rw-r--r-- 2.7 KB
irq-renesas-intc-irqpin.c -rw-r--r-- 16.6 KB
irq-renesas-irqc.c -rw-r--r-- 7.9 KB
irq-s3c24xx.c -rw-r--r-- 41.7 KB
irq-sa11x0.c -rw-r--r-- 3.9 KB
irq-sirfsoc.c -rw-r--r-- 3.5 KB
irq-st.c -rw-r--r-- 5.2 KB
irq-sun4i.c -rw-r--r-- 4.5 KB
irq-sunxi-nmi.c -rw-r--r-- 5.9 KB
irq-tb10x.c -rw-r--r-- 5.5 KB
irq-tegra.c -rw-r--r-- 9.1 KB
irq-ts4800.c -rw-r--r-- 3.9 KB
irq-versatile-fpga.c -rw-r--r-- 5.8 KB
irq-vf610-mscm-ir.c -rw-r--r-- 6.4 KB
irq-vic.c -rw-r--r-- 14.4 KB
irq-vt8500.c -rw-r--r-- 6.5 KB
irq-xtensa-mx.c -rw-r--r-- 4.2 KB
irq-xtensa-pic.c -rw-r--r-- 2.7 KB
irq-zevio.c -rw-r--r-- 3.3 KB
irqchip.c -rw-r--r-- 878 bytes
spear-shirq.c -rw-r--r-- 7.3 KB

back to top