Re: tsc breaks atkbd suspend

2008-02-19 Thread Thomas Gleixner
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 <[EMAIL PROTECTED]> wrote: > > > > > > > TSC is used even on machines when CONFIG_X86_TSC is not set (X86_TSC > > > > means

Re: tsc breaks atkbd suspend

2008-02-19 Thread Len Brown
On Tuesday 19 February 2008 11:51, Thomas Gleixner wrote: > On Tue, 19 Feb 2008, Ingo Molnar wrote: > > * Pavel Machek <[EMAIL PROTECTED]> 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

Re: tsc breaks atkbd suspend

2008-02-19 Thread Thomas Gleixner
On Tue, 19 Feb 2008, Ingo Molnar wrote: > * Pavel Machek <[EMAIL PROTECTED]> 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

Re: tsc breaks atkbd suspend

2008-02-19 Thread Ingo Molnar
* Pavel Machek <[EMAIL PROTECTED]> 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

Re: tsc breaks atkbd suspend

2008-02-19 Thread Pavel Machek
On Mon 2008-02-18 16:12:40, Thomas Gleixner wrote: > On Mon, 18 Feb 2008, Pavel Machek wrote: > > > I do not understand, what you mean. When exactly is "sleeppy test" > > > running ? > > > > from late_initcall(). > > Has the system already switched to highres/nohz mode at this point ? I guess

Re: tsc breaks atkbd suspend

2008-02-19 Thread Pavel Machek
Hi! This is wrong: #ifdef CONFIG_X86_TSC static int __init tsc_setup(char *str) { printk(KERN_WARNING "notsc: Kernel compiled with CONFIG_X86_TSC, " "cannot disable TSC.\n"); return 1; } #else /* * disable flag for tsc. Takes effect by clearing

Re: tsc breaks atkbd suspend

2008-02-19 Thread Pavel Machek
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 <[EMAIL

Re: tsc breaks atkbd suspend

2008-02-19 Thread Pavel Machek
On Mon 2008-02-18 16:12:40, Thomas Gleixner wrote: On Mon, 18 Feb 2008, Pavel Machek wrote: I do not understand, what you mean. When exactly is sleeppy test running ? from late_initcall(). Has the system already switched to highres/nohz mode at this point ? I guess so, as nohz=off

Re: tsc breaks atkbd suspend

2008-02-19 Thread Pavel Machek
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 [EMAIL

Re: tsc breaks atkbd suspend

2008-02-19 Thread Pavel Machek
Hi! This is wrong: #ifdef CONFIG_X86_TSC static int __init tsc_setup(char *str) { printk(KERN_WARNING notsc: Kernel compiled with CONFIG_X86_TSC, cannot disable TSC.\n); return 1; } #else /* * disable flag for tsc. Takes effect by clearing the

Re: tsc breaks atkbd suspend

2008-02-19 Thread Ingo Molnar
* Pavel Machek [EMAIL PROTECTED] 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

Re: tsc breaks atkbd suspend

2008-02-19 Thread Thomas Gleixner
On Tue, 19 Feb 2008, Ingo Molnar wrote: * Pavel Machek [EMAIL PROTECTED] 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

Re: tsc breaks atkbd suspend

2008-02-19 Thread Len Brown
On Tuesday 19 February 2008 11:51, Thomas Gleixner wrote: On Tue, 19 Feb 2008, Ingo Molnar wrote: * Pavel Machek [EMAIL PROTECTED] 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,

Re: tsc breaks atkbd suspend

2008-02-19 Thread Thomas Gleixner
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 [EMAIL PROTECTED] wrote: TSC is used even on machines when CONFIG_X86_TSC is not set (X86_TSC means _require_ TSC), but it is

Re: tsc breaks atkbd suspend

2008-02-18 Thread Thomas Gleixner
On Mon, 18 Feb 2008, Pavel Machek wrote: > > > ...and I get hang after "ps2_command adjust timeout" for 10 seconds, > > > while it should wait 10msec or so. > > > > When is this code called ? > > from serio_suspend. It is normal device, not a sysdev, AFAICT. > > > > nohz=off fixes that. > > >

Re: tsc breaks atkbd suspend

2008-02-18 Thread Pavel Machek
Hi! > > I'm trying to use the "sleepy test" here, unfortunately it locks for > > 10-or-so seconds. > > > > Problem is in wait_event_timeout: timeouts take about 100x as long as > > they should. Code in drivers/input/serio/libps2.c: > > > > + printk("ps2_command waiting event: %d\n",

Re: tsc breaks atkbd suspend

2008-02-18 Thread Thomas Gleixner
On Mon, 18 Feb 2008, Pavel Machek wrote: > Hi! > > I'm trying to use the "sleepy test" here, unfortunately it locks for > 10-or-so seconds. > > Problem is in wait_event_timeout: timeouts take about 100x as long as > they should. Code in drivers/input/serio/libps2.c: > > +

tsc breaks atkbd suspend

2008-02-18 Thread Pavel Machek
Hi! I'm trying to use the "sleepy test" here, unfortunately it locks for 10-or-so seconds. Problem is in wait_event_timeout: timeouts take about 100x as long as they should. Code in drivers/input/serio/libps2.c: + printk("ps2_command waiting event: %d\n", timeout); timeout =

tsc breaks atkbd suspend

2008-02-18 Thread Pavel Machek
Hi! I'm trying to use the sleepy test here, unfortunately it locks for 10-or-so seconds. Problem is in wait_event_timeout: timeouts take about 100x as long as they should. Code in drivers/input/serio/libps2.c: + printk(ps2_command waiting event: %d\n, timeout); timeout =

Re: tsc breaks atkbd suspend

2008-02-18 Thread Pavel Machek
Hi! I'm trying to use the sleepy test here, unfortunately it locks for 10-or-so seconds. Problem is in wait_event_timeout: timeouts take about 100x as long as they should. Code in drivers/input/serio/libps2.c: + printk(ps2_command waiting event: %d\n, timeout);

Re: tsc breaks atkbd suspend

2008-02-18 Thread Thomas Gleixner
On Mon, 18 Feb 2008, Pavel Machek wrote: Hi! I'm trying to use the sleepy test here, unfortunately it locks for 10-or-so seconds. Problem is in wait_event_timeout: timeouts take about 100x as long as they should. Code in drivers/input/serio/libps2.c: + printk(ps2_command waiting

Re: tsc breaks atkbd suspend

2008-02-18 Thread Thomas Gleixner
On Mon, 18 Feb 2008, Pavel Machek wrote: ...and I get hang after ps2_command adjust timeout for 10 seconds, while it should wait 10msec or so. When is this code called ? from serio_suspend. It is normal device, not a sysdev, AFAICT. nohz=off fixes that. notsc fixes