qemu/hw/rtc
Paolo Bonzini 7a3e29b12f mc146818rtc: fix timer interrupt reinjection again
Commit 369b41359a broke timer interrupt
reinjection when there is no period change by the guest.  In that
case, old_period is 0, which ends up zeroing irq_coalesced (counter of
reinjected interrupts).

The consequence is Windows 7 is unable to synchronize time via NTP.
Easily reproducible by playing a fullscreen video with cirrus and VNC.

Fix by passing s->period when periodic_timer_update is called due to
expiration of the timer.  With this change, old_period == 0 only
means that the periodic timer was off.

Reported-by: Marcelo Tosatti <mtosatti@redhat.com>
Co-developed-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2019-11-19 10:02:13 +01:00
..
aspeed_rtc.c hw: Move Aspeed RTC from hw/timer/ to hw/rtc/ subdirectory 2019-10-24 20:31:44 +02:00
ds1338.c hw: Move DS1338 device from hw/timer/ to hw/rtc/ subdirectory 2019-10-24 20:26:35 +02:00
exynos4210_rtc.c hw: Move Exynos4210 RTC from hw/timer/ to hw/rtc/ subdirectory 2019-10-24 20:29:18 +02:00
Kconfig hw: Move DS1338 device from hw/timer/ to hw/rtc/ subdirectory 2019-10-24 20:26:35 +02:00
m41t80.c hw: Move M41T80 device from hw/timer/ to hw/rtc/ subdirectory 2019-10-24 20:22:12 +02:00
m48t59-internal.h hw: Move M48T59 device from hw/timer/ to hw/rtc/ subdirectory 2019-10-24 20:20:45 +02:00
m48t59-isa.c hw: Move M48T59 device from hw/timer/ to hw/rtc/ subdirectory 2019-10-24 20:20:45 +02:00
m48t59.c hw: Move M48T59 device from hw/timer/ to hw/rtc/ subdirectory 2019-10-24 20:20:45 +02:00
Makefile.objs hw: Move Aspeed RTC from hw/timer/ to hw/rtc/ subdirectory 2019-10-24 20:31:44 +02:00
mc146818rtc.c mc146818rtc: fix timer interrupt reinjection again 2019-11-19 10:02:13 +01:00
pl031.c hw: Move PL031 device from hw/timer/ to hw/rtc/ subdirectory 2019-10-24 20:10:27 +02:00
sun4v-rtc.c hw: Move sun4v hypervisor RTC from hw/timer/ to hw/rtc/ subdirectory 2019-10-24 20:23:15 +02:00
trace-events hw: Move Aspeed RTC from hw/timer/ to hw/rtc/ subdirectory 2019-10-24 20:31:44 +02:00
twl92230.c hw: Move TWL92230 device from hw/timer/ to hw/rtc/ subdirectory 2019-10-24 20:24:50 +02:00
xlnx-zynqmp-rtc.c hw/rtc/xlnx-zynqmp-rtc: Remove unused "ptimer.h" include 2019-10-24 20:34:12 +02:00