Messages in this thread | | | Date | Thu, 2 May 2013 15:46:46 +0200 | From | Pavel Machek <> | Subject | Re: [PATCH 03/10] freezer: add new freezable helpers using freezer_do_not_count() |
| |
On Thu 2013-05-02 15:05:13, Oliver Neukum wrote: > On Thursday 02 May 2013 14:48:26 Pavel Machek wrote: > > On Mon 2013-04-29 14:45:39, Colin Cross wrote: > > > Freezing tasks will wake up almost every userspace task from > > > where it is blocking and force it to run until it hits a > > > call to try_to_sleep(), generally on the exit path from the syscall > > > it is blocking in. On resume each task will run again, usually > > > restarting the syscall and running until it hits the same > > > blocking call as it was originally blocked in. > > > > Ok, so you are optimizing suspend at the cost of runtime operations, > > right? > > > > Would it make sense to do suspends entirely without freezer in your > > configurations? With the right drivers, it should work ok. > > Right now drivers now that they will not be busy when runtime > suspend happens. The freezer has the same effect for system PM. > If you remove that certainty it becomes impossible for simple drivers > to declare their devices busy upon open and do no synchronization > between IO and PM.
I know. Drivers can mostly ignore suspend.
But android people do suspend multiple times a second, and are optimizing freezer. I'm suggesting they should take a look at their drivers, and perhaps they can optimize freezer out totally.
(Or perhaps switch to n900-like solution, and avoid suspend entirely. They keep machines functioning in suspend mode. That aint no suspend.) Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
| |