xen/21627-cpuidle-wrap.patch

24 lines
788 B
Diff

# HG changeset patch
# User Keir Fraser <keir.fraser@citrix.com>
# Date 1276761018 -3600
# Node ID 7a00c0bd4fc131fb4de5df9f3fdc4e48a29dd5f9
# Parent dab8676e97ce7a95c0777e58eee4b1b03bfc5322
cpuidle: fix wrapped ticks calculation for pm timer.
Signed-off-by: Wei Gang <gang.wei@intel.com>
--- a/xen/arch/x86/acpi/cpu_idle.c
+++ b/xen/arch/x86/acpi/cpu_idle.c
@@ -127,9 +127,9 @@ static inline u32 ticks_elapsed(u32 t1,
if ( t2 >= t1 )
return (t2 - t1);
else if ( !(acpi_gbl_FADT.flags & ACPI_FADT_32BIT_TIMER) )
- return (((0x00FFFFFF - t1) + t2) & 0x00FFFFFF);
+ return (((0x00FFFFFF - t1) + t2 + 1) & 0x00FFFFFF);
else
- return ((0xFFFFFFFF - t1) + t2);
+ return ((0xFFFFFFFF - t1) + t2 +1);
}
static void acpi_safe_halt(void)