clockevents: remove the suspend/resume workaround^Wthinko
authorThomas Gleixner <tglx@linutronix.de>
Sat, 22 Sep 2007 22:29:06 +0000 (22:29 +0000)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Sun, 23 Sep 2007 00:15:34 +0000 (17:15 -0700)
commitb7e113dc9d52c4a37d2da6fafe77959f3a28eccf
tree51f7ff4350b684be360b9894b77f131933080145
parentb04e7bdb984e3b7f62fb7f44146a529f88cc7639
clockevents: remove the suspend/resume workaround^Wthinko

In a desparate attempt to fix the suspend/resume problem on Andrews
VAIO I added a workaround which enforced the broadcast of the oneshot
timer on resume. This was actually resolving the problem on the VAIO
but was just a stupid workaround, which was not tackling the root
cause: the assignement of lower idle C-States in the ACPI processor_idle
code. The cpuidle patches, which utilize the dynamic tick feature and
go faster into deeper C-states exposed the problem again. The correct
solution is the previous patch, which prevents lower C-states across
the suspend/resume.

Remove the enforcement code, including the conditional broadcast timer
arming, which helped to pamper over the real problem for quite a time.
The oneshot broadcast flag for the cpu, which runs the resume code can
never be set at the time when this code is executed. It only gets set,
when the CPU is entering a lower idle C-State.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Len Brown <lenb@kernel.org>
Cc: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Cc: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
kernel/time/tick-broadcast.c