Revert "clocksource: Load the ACPI PM clocksource asynchronously"
authorThomas Gleixner <tglx@linutronix.de>
Wed, 11 Apr 2012 21:49:16 +0000 (23:49 +0200)
committerThomas Gleixner <tglx@linutronix.de>
Wed, 11 Apr 2012 22:05:05 +0000 (00:05 +0200)
commit4d780f5ba717b19b95836af4911d7ee89381a0df
tree6f02bc7b7585c82cb3d4490d1dc7ba77e3bac4f9
parente8d3726839f4ff1d77408a992b7a84d089964105
Revert "clocksource: Load the ACPI PM clocksource asynchronously"

This reverts commit 5592580b82a981079a7e86befed6e34d5ad55cd3.

The reason for this revert is that making the frequency verification
preemptible and interruptible is not working reliably. Michaels
machine failed to use PM-timer with the message:

  PM-Timer running at invalid rate: 113% of normal - aborting.

That's not a surprise as the frequency verification does rely on
interrupts being disabled. With a async scheduled thread there is no
guarantee to achieve the same result. Also some driver might fiddle
with the CTC channel 2 during the verification period, which makes the
result even more random and unpredictable.

This can be solved by using the same mechanism as we use in the
deferred TSC validation code, but that only will work if we verified a
working HPET _BEFORE_ trying to do the PM-Timer lazy validation.

So for now reverting is the safe option.

Bisected-by: Michael Witten <mfwitten@gmail.com>
Cc: Arjan van de Ven <arjanvandeven@gmail.com>
Cc: Arjan van de Ven <arjan@infradead.org>
Cc: John Stultz <johnstul@us.ibm.com>
Cc: Len Brown <lenb@kernel.org>
LKML-Reference: <alpine.LFD.2.02.1204112303270.2542@ionos>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
drivers/clocksource/acpi_pm.c