diff options
| author | Keir Fraser <keir.fraser@citrix.com> | 2008-06-03 09:41:19 +0100 |
|---|---|---|
| committer | Keir Fraser <keir.fraser@citrix.com> | 2008-06-03 09:41:19 +0100 |
| commit | 5ede5271a48ce6d16e2c87de833d782b0061ed03 (patch) | |
| tree | e3e7e66e10a2f112957229fc957730c3e12232be /tools/ioemu/translate-all.c | |
| parent | 7534d30b438b3ab76967743bbb162e6b60dfe823 (diff) | |
| download | xen-5ede5271a48ce6d16e2c87de833d782b0061ed03.tar.gz xen-5ede5271a48ce6d16e2c87de833d782b0061ed03.tar.bz2 xen-5ede5271a48ce6d16e2c87de833d782b0061ed03.zip | |
Improve HPET comparator reprog to prevent intr-near-missing case
HPET intr-near-missing means if the current counter value is too close
to the comparator value to be reprogrammed the expected HPET intr may
be missing. Linux kernel uses a mininal 48-hpet-ticks(~3.5us) distance
to workaround this, but personal observation showed there is still
failure case while delta=3D0xba (~13.5us). So choosing 20us as the
MIN_DELTA_NS should be helpful to prevent near-missing from happening.
local_irq_save/restore were used to avoid disturbance. (+ 2) was used
as a final guard to avoid wrong judgement due to the real happened
near-missing case.
Signed-off-by: Wei Gang <gang.wei@intel.com>
Signed-off-by: Tian Kevin <kevin.tian@intel.com>
Diffstat (limited to 'tools/ioemu/translate-all.c')
0 files changed, 0 insertions, 0 deletions
