Adding pm_schedule_idle(), maybe removing pm_schedule_suspend()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Rafael:

It turns out that I need a pm_schedule_idle() routine.  
pm_schedule_suspend() just doesn't do what I want -- I need the 
runtime_idle() callback to be invoked when the timer expires, not 
runtime_suspend().

Adding the routine itself is easy enough, but the obvious way to
implement it is to use dev->power.request to tell the timer function
whether it should queue an idle or a suspend.  This leads to a problem:
It becomes impossible to queue an idle request if there's a scheduled
suspend.  The reason is that power.request has to remain set to
indicate that a suspend should be queued when the timer expires, so it
can't be changed to RPM_REQ_IDLE.

One possible way around this would be to have pm_schedule_idle() 
completely replace pm_schedule_suspend().  This seems like a reasonable 
approach -- at the time of the function call we don't know what 
conditions will be like in the future, so when the timer expires we 
should check again to see if a suspend is appropriate.

What do you think?

Alan Stern

_______________________________________________
linux-pm mailing list
linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/linux-pm

[Index of Archives]     [Linux ACPI]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [CPU Freq]     [Kernel Newbies]     [Fedora Kernel]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux