Andy Green wrote: > You're right, I don't know where the wake lock code came from or what it > really is for either, so we disabled it in config to work around it.
There's a hint in include/linux/wakelock.h: /* A wake_lock prevents the system from entering suspend or other low power * states when active. If the type is set to WAKE_LOCK_SUSPEND, the wake_lock * prevents a full system suspend. If the type is WAKE_LOCK_IDLE, low power * states that cause large interrupt latencies or that disable a set of * interrupts will not entered from idle until the wake_locks are released. */ Sounds scary, doesn't it ? Another clue is in drivers/staging/android/Kconfig: | Enable wakelocks. When user space request a sleep state the | sleep request will be delayed until no wake locks are held. Even scarier. Interestingly, I didn't see a peep about this on linux-kernel. You'd think that someone proposing this kind of klud^H^H^H^Harchitectural enhancement would try to get some serious review ... - Werner
