Wei, Gang
2010-Jun-17 07:37 UTC
[Xen-devel] [PATCH1/6] cpuidle: fix wrapped ticks calculation for pm timer
cpuidle: fix wrapped ticks calculation for pm timer. Signed-off-by: Wei Gang <gang.wei@intel.com> diff -r 26c2922da53c xen/arch/x86/acpi/cpu_idle.c --- a/xen/arch/x86/acpi/cpu_idle.c Thu May 27 09:39:47 2010 +0100 +++ b/xen/arch/x86/acpi/cpu_idle.c Sun Jun 13 06:44:32 2010 +0800 @@ -137,9 +137,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) _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Jan Beulich
2010-Jun-17 08:18 UTC
Re: [Xen-devel] [PATCH1/6] cpuidle: fix wrapped ticks calculation for pm timer
>>> On 17.06.10 at 09:37, "Wei, Gang" <gang.wei@intel.com> wrote: > cpuidle: fix wrapped ticks calculation for pm timer. > > Signed-off-by: Wei Gang <gang.wei@intel.com> > > diff -r 26c2922da53c xen/arch/x86/acpi/cpu_idle.c > --- a/xen/arch/x86/acpi/cpu_idle.c Thu May 27 09:39:47 2010 +0100 > +++ b/xen/arch/x86/acpi/cpu_idle.c Sun Jun 13 06:44:32 2010 +0800 > @@ -137,9 +137,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);Why can''t this then also just be (t2 - t1)?> } > > static void acpi_safe_halt(void)Jan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Wei, Gang
2010-Jun-17 08:45 UTC
RE: [Xen-devel] [PATCH1/6] cpuidle: fix wrapped ticks calculation for pm timer
On Thursday, 2010-6-17 4:19 PM, Jan Beulich wrote:>>>> On 17.06.10 at 09:37, "Wei, Gang" <gang.wei@intel.com> wrote: >> cpuidle: fix wrapped ticks calculation for pm timer. >> >> Signed-off-by: Wei Gang <gang.wei@intel.com> >> >> diff -r 26c2922da53c xen/arch/x86/acpi/cpu_idle.c >> --- a/xen/arch/x86/acpi/cpu_idle.c Thu May 27 09:39:47 2010 +0100 >> +++ b/xen/arch/x86/acpi/cpu_idle.c Sun Jun 13 06:44:32 2010 +0800 >> @@ -137,9 +137,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); > > Why can''t this then also just be (t2 - t1)?Yes, you are right. We could simply just let it be (t2 - t1) here. But it would depend on the t1/t2 type. Current version didn''t depend on the input types which will be changed by later patch. Jimmy _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel