]> CyberLeo.Net >> Repos - FreeBSD/stable/10.git/commit
MFC 260237:
authorjhb <jhb@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Tue, 20 May 2014 21:05:36 +0000 (21:05 +0000)
committerjhb <jhb@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Tue, 20 May 2014 21:05:36 +0000 (21:05 +0000)
commit653a4ce3742ba91ea3aa3fc51ff0ae994dda9e21
tree7af561a9b1c5ae25c5352bd54fd0c6b0989a6da3
parenta80a627129ce75abe75fee283f8e82711d092c5c
MFC 260237:
Fix a bug in the HPET emulation where a timer interrupt could be lost when the
guest disables the HPET.

The HPET timer interrupt is triggered from the callout handler associated with
the timer. It is possible for the callout handler to be delayed before it gets
a chance to execute. If the guest disables the HPET during this window then the
handler never gets a chance to execute and the timer interrupt is lost.

This is now fixed by injecting a timer interrupt into the guest if the callout
time is detected to be in the past when the HPET is disabled.

git-svn-id: svn://svn.freebsd.org/base/stable/10@266477 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
sys/amd64/vmm/io/vhpet.c