* Re: tsc breaks atkbd suspend [not found] ` <alpine.LFD.1.00.0802181545090.7583@apollo.tec.linutronix.de> @ 2008-02-19 10:00 ` Pavel Machek 2008-02-19 14:05 ` Ingo Molnar 0 siblings, 1 reply; 5+ messages in thread From: Pavel Machek @ 2008-02-19 10:00 UTC (permalink / raw) To: Thomas Gleixner, Len Brown, Linux-pm mailing list, jbohac Cc: kernel list, jikos, Ingo Molnar, Rafael J. Wysocki, Andrew Morton TSC is used even on machines when CONFIG_X86_TSC is not set (X86_TSC means _require_ TSC), but it is not properly disabled when it is unusable, because acpi code understood the config switch as "may use TSC". This actually fixes suspend problems on my x60. Signed-off-by: Pavel Machek <pavel@suse.cz> diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c index 980e1c3..6f3b217 100644 --- a/drivers/acpi/processor_idle.c +++ b/drivers/acpi/processor_idle.c @@ -364,7 +364,7 @@ int acpi_processor_resume(struct acpi_de return 0; } -#if defined (CONFIG_GENERIC_TIME) && defined (CONFIG_X86_TSC) +#if defined (CONFIG_GENERIC_TIME) && defined (CONFIG_X86) static int tsc_halts_in_c(int state) { switch (boot_cpu_data.x86_vendor) { @@ -544,7 +544,7 @@ #endif /* Get end time (ticks) */ t2 = inl(acpi_gbl_FADT.xpm_timer_block.address); -#if defined (CONFIG_GENERIC_TIME) && defined (CONFIG_X86_TSC) +#if defined (CONFIG_GENERIC_TIME) && defined (CONFIG_X86) /* TSC halts in C2, so notify users */ if (tsc_halts_in_c(ACPI_STATE_C2)) mark_tsc_unstable("possible TSC halt in C2"); @@ -609,7 +609,7 @@ #endif acpi_set_register(ACPI_BITREG_ARB_DISABLE, 0); } -#if defined (CONFIG_GENERIC_TIME) && defined (CONFIG_X86_TSC) +#if defined (CONFIG_GENERIC_TIME) && defined (CONFIG_X86) /* TSC halts in C3, so notify users */ if (tsc_halts_in_c(ACPI_STATE_C3)) mark_tsc_unstable("TSC halts in C3"); @@ -1500,7 +1500,7 @@ static int acpi_idle_enter_simple(struct acpi_idle_do_entry(cx); t2 = inl(acpi_gbl_FADT.xpm_timer_block.address); -#if defined (CONFIG_GENERIC_TIME) && defined (CONFIG_X86_TSC) +#if defined (CONFIG_GENERIC_TIME) && defined (CONFIG_X86) /* TSC could halt in idle, so notify users */ if (tsc_halts_in_c(cx->type)) mark_tsc_unstable("TSC halts in idle");; @@ -1614,7 +1614,7 @@ static int acpi_idle_enter_bm(struct cpu spin_unlock(&c3_lock); } -#if defined (CONFIG_GENERIC_TIME) && defined (CONFIG_X86_TSC) +#if defined (CONFIG_GENERIC_TIME) && defined (CONFIG_X86) /* TSC could halt in idle, so notify users */ if (tsc_halts_in_c(ACPI_STATE_C3)) mark_tsc_unstable("TSC halts in idle"); -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: tsc breaks atkbd suspend 2008-02-19 10:00 ` tsc breaks atkbd suspend Pavel Machek @ 2008-02-19 14:05 ` Ingo Molnar 2008-02-19 16:51 ` Thomas Gleixner 0 siblings, 1 reply; 5+ messages in thread From: Ingo Molnar @ 2008-02-19 14:05 UTC (permalink / raw) To: Pavel Machek Cc: Thomas Gleixner, Len Brown, Linux-pm mailing list, jbohac, kernel list, jikos, Rafael J. Wysocki, Andrew Morton * Pavel Machek <pavel@ucw.cz> wrote: > TSC is used even on machines when CONFIG_X86_TSC is not set (X86_TSC > means _require_ TSC), but it is not properly disabled when it is > unusable, because acpi code understood the config switch as "may use > TSC". > > This actually fixes suspend problems on my x60. ah! This makes tons of sense. I've applied your patch - but i guess it should go via the ACPI tree. Ingo ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: tsc breaks atkbd suspend 2008-02-19 14:05 ` Ingo Molnar @ 2008-02-19 16:51 ` Thomas Gleixner 2008-02-20 0:17 ` Len Brown 0 siblings, 1 reply; 5+ messages in thread From: Thomas Gleixner @ 2008-02-19 16:51 UTC (permalink / raw) To: Ingo Molnar Cc: Andrew Morton, Len Brown, jbohac, jikos, Linux-pm mailing list, kernel list On Tue, 19 Feb 2008, Ingo Molnar wrote: > * Pavel Machek <pavel@ucw.cz> wrote: > > > TSC is used even on machines when CONFIG_X86_TSC is not set (X86_TSC > > means _require_ TSC), but it is not properly disabled when it is > > unusable, because acpi code understood the config switch as "may use > > TSC". > > > > This actually fixes suspend problems on my x60. > > ah! This makes tons of sense. I've applied your patch - but i guess it > should go via the ACPI tree. Right. The breakage was introduced there when IA64 switched to GENERIC_TIME and the X86_TSC dependency was added. Thanks, tglx ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: tsc breaks atkbd suspend 2008-02-19 16:51 ` Thomas Gleixner @ 2008-02-20 0:17 ` Len Brown 2008-02-20 6:51 ` Thomas Gleixner 0 siblings, 1 reply; 5+ messages in thread From: Len Brown @ 2008-02-20 0:17 UTC (permalink / raw) To: Thomas Gleixner Cc: Ingo Molnar, Pavel Machek, Len Brown, Linux-pm mailing list, jbohac, kernel list, jikos, Rafael J. Wysocki, Andrew Morton On Tuesday 19 February 2008 11:51, Thomas Gleixner wrote: > On Tue, 19 Feb 2008, Ingo Molnar wrote: > > * Pavel Machek <pavel@ucw.cz> wrote: > > > > > TSC is used even on machines when CONFIG_X86_TSC is not set (X86_TSC > > > means _require_ TSC), but it is not properly disabled when it is > > > unusable, because acpi code understood the config switch as "may use > > > TSC". > > > > > > This actually fixes suspend problems on my x60. > > > > ah! This makes tons of sense. I've applied your patch please do not. > > - but i guess it should go via the ACPI tree. yes. > Right. The breakage was introduced there when IA64 switched to > GENERIC_TIME and the X86_TSC dependency was added. so do we need a patch for 2.6.23.stable and 2.6.24.stable? thanks, -Len ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: tsc breaks atkbd suspend 2008-02-20 0:17 ` Len Brown @ 2008-02-20 6:51 ` Thomas Gleixner 0 siblings, 0 replies; 5+ messages in thread From: Thomas Gleixner @ 2008-02-20 6:51 UTC (permalink / raw) To: Len Brown Cc: Ingo Molnar, Pavel Machek, Len Brown, Linux-pm mailing list, jbohac, kernel list, jikos, Rafael J. Wysocki, Andrew Morton On Tue, 19 Feb 2008, Len Brown wrote: > On Tuesday 19 February 2008 11:51, Thomas Gleixner wrote: > > On Tue, 19 Feb 2008, Ingo Molnar wrote: > > > * Pavel Machek <pavel@ucw.cz> wrote: > > > > > > > TSC is used even on machines when CONFIG_X86_TSC is not set (X86_TSC > > > > means _require_ TSC), but it is not properly disabled when it is > > > > unusable, because acpi code understood the config switch as "may use > > > > TSC". > > > > > > > > This actually fixes suspend problems on my x60. > > > > > > ah! This makes tons of sense. I've applied your patch > > please do not. It's not in the -mm branch. > > > - but i guess it should go via the ACPI tree. > > yes. > > > Right. The breakage was introduced there when IA64 switched to > > GENERIC_TIME and the X86_TSC dependency was added. > > so do we need a patch for 2.6.23.stable and 2.6.24.stable? Yes. Thanks, tglx ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2008-02-20 6:51 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20080218133852.GA1573@elf.ucw.cz>
[not found] ` <alpine.LFD.1.00.0802181515070.7583@apollo.tec.linutronix.de>
[not found] ` <20080218143757.GB1960@elf.ucw.cz>
[not found] ` <alpine.LFD.1.00.0802181545090.7583@apollo.tec.linutronix.de>
2008-02-19 10:00 ` tsc breaks atkbd suspend Pavel Machek
2008-02-19 14:05 ` Ingo Molnar
2008-02-19 16:51 ` Thomas Gleixner
2008-02-20 0:17 ` Len Brown
2008-02-20 6:51 ` Thomas Gleixner
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox