On Thu, 27 May 2010 19:25:27 +0200 Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote: > On Thu, 2010-05-27 at 19:21 +0200, Florian Mickler wrote: > > On Thu, 27 May 2010 18:45:25 +0200 (CEST) > > Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote: > > > > > The whole notion of treating suspend to RAM any different than a plain > > > idle C-State is wrong. It's not different at all. You just use a > > > different mechanism which has longer takedown and wakeup latencies and > > > requires to shut down stuff and setup extra wakeup sources. > > > > > > And there is the whole problem. Switching from normal event delivery > > > to those special wakeup sources. That needs to be engineered in any > > > case carefuly and it does not matter whether you add suspend blockers > > > or not. > > > > Ok, I just don't know the answer: How is it just another idle state if > > the userspace gets frozen? Doesn't that bork the whole transition and > > you need a userspace<->kernel synchronisation point to not loose events? > > There is no userspace to freeze when the runqueues are empty. If in the imaginery situation where userspace can aquire certain wakeup-constraints and loose certain wakeup-constraints, then it could be that the system enters suspend without empty runqueues. > And as explained, you won't loose events if all the devices do a proper > state transition. To quote: I believe the problem beeing userspace frozen at an unopportune time. So the wakeup event is processed (kernel-side) but userspace didn't have time to reacquire the correct wakeup-constraint to process the event. I.e. the wakeup will be effectivly ignored. Cheers, Flo _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm