]> Pileus Git - ~andy/linux/commit
Revert "clocksource: sh_tmu: Runtime PM support"
authorPaul Mundt <lethal@linux-sh.org>
Tue, 31 May 2011 06:23:20 +0000 (15:23 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Tue, 31 May 2011 06:23:20 +0000 (15:23 +0900)
commitd4905ce38c73964b868037e49a5945e1cf47a7f2
treef7b41c1720dabb7b14a92ff0c47aeff1d6e4d70f
parentdb7eba292e913390fa881272bfbc3da0a5380513
Revert "clocksource: sh_tmu: Runtime PM support"

This reverts commit 1b842e91fea9447eff5eb687e28ad61c02f5033e.

There is a fundamental ordering race between the early and late probe
paths and the runtime PM tie-in that results in __pm_runtime_resume()
attempting to take a lock that hasn't been initialized yet (which by
proxy also suggests that pm_runtime_init() hasn't yet been run on the
device either, making the entire thing unsafe) -- resulting in instant
death on SMP or on UP with spinlock debugging enabled:

 sh_tmu.0: used for clock events
 sh_tmu.0: used for periodic clock events
BUG: spinlock trylock failure on UP on CPU#0, swapper/0
 lock: 804db198, .magic: 00000000, .owner: <none>/-1, .owner_cpu: 0
...

Revert it for now until the ordering issues can be resolved, or we can get
some more help from the runtime PM framework to make this possible.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
drivers/clocksource/sh_tmu.c