sleep / wake-up

Guennadi Liakhovetski g.liakhovetski at gmx.de
Sun Jun 11 09:38:42 EST 2006


On Sat, 10 Jun 2006, Lee Revell wrote:

> On Sun, 2006-06-11 at 00:41 +0200, Guennadi Liakhovetski wrote:
> > On Sat, 10 Jun 2006, Jon Scully wrote:
> > 
> > > Also, here's an article (just about 4 days old):
> > > http://www.linux.com/article.pl?sid=06/05/24/1716222
> > > (I thought the subject sounded familiar ;-)
> > 
> > Ok, thanks for both replies. That's a good start already! But this is all 
> > about __software__ suspend. But aren't some other "hardware" suspend-modes 
> > also available on ppc, like suspend-to-RAM? For example, on my system I 
> > could say quite a bit of power by stopping the HD, switching off 
> > USB-ports, eth, and then putting the CPU to sleep? Would all this be 
> > doable by just performing those steps and then clocking the CPU down?
> > 
> 
> Did you read the article?
> 
> "ACPI state S3 -- also know as Suspend-to-RAM -- is the state where
> everything in the system enters a low-power state except for RAM, which
> consumes a small amount of power in order to retain its contents, so
> that upon resuming, everything is loaded back from the memory and all
> running applications are restored immediately."

Yes: "ACPI" - we are talking about a (embedded) PPC... But I thought you 
could "simulate" that without ACPI too. AFAIU, ACPI is the way hardware 
(motherboard / laptop) manufacturers tell you about system's 
configuration, including how to enter S3. In its absence suspending every 
(e.g., embedded) system you have to _know_ the hardware. E.g., what do 
they do on Apple ppc laptops? You don't have ACPI there. Is there any 
generic system there or did they just study every new ppc-mac and handled 
it specially?

> > I must admit, I don't understand the whole idea behind suspending at all. 
> > What happens to all applications that went to sleep for 1 second and wake 
> > up 2 days later? What about all network connections? timeouts? I have to 
> > read some basics...
> 
> It's insanely difficult and complicated.  Every single driver and kernel
> subsystem has to be changed.  Zillions of man-hours have gone into
> getting suspend to work on Linux and it's still not there...

I guess, I really wanted to ask about IO operations in the fly... 
probably, you only use automatic suspend if you know your system is not 
supposed to do any long IO-operations, and "short" ones will be completed? 
Even if you monitor loadavg - it might stay quite low during a long 
transfer. And if you do long IOs you have to decide when it is safe to 
suspend yourself... So that the kernel just has to flush current IO 
queues... Yeah, doesn't sound very easy.

Thanks
Guennadi
---
Guennadi Liakhovetski



More information about the Linuxppc-embedded mailing list