Re: [linux-pm] [PATCH 0/8] Suspend block api (version 6)

From: Tony Lindgren
Date: Thu May 13 2010 - 17:47:59 EST


* Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> [100513 14:32]:
> On Thu, 13 May 2010, Tony Lindgren wrote:
>
> > The difference between echo mem > /sys/power/state and suspend blocks
> > is that with suspend blocks the system keeps running.
>
> Irrelevant. Paul wasn't talking about the suspend blockers; he was
> talking about opportunistic suspend. So what's the difference between
> opportunistic suspend and "echo mem >/sys/power/state"? Especially
> when suspend blockers aren't being used?

Opportunistic suspend is really trying to do runtime PM, see below.

> > And that's why
> > it should be handled by runtime power management instead.
>
> Runtime PM is not capable of freezing userspace and shutting down CPUs.
> More or less by definition -- if it could then it wouldn't be "runtime"
> any more, since the processor wouldn't be running.

Not true. We are already powering off CPUs and rebooting them for
at least omaps in every idle loop using cpuidle. The memory stays on.

> > The suspend blocks seems like a hack to spam filter good and bad
> > apps from timer usage point of view. Applications are categorized
> > as good or bad depending if they grab a susped blocker or not.
>
> You're referring just to the userspace part of the suspend blocker
> API. What about the kernel part?

IMHO some timer flags should be used in the kernel too. Currently
there's no way of knowing which timers are good or bad from suspend
point of view.

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/