Re: Attempted summary of suspend-blockers LKML thread, take three

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: david
Date: Saturday, August 7, 2010 - 2:38 am

On Sat, 7 Aug 2010, Ted Ts'o wrote:


this doesn't require wakelocks or anything else new. all it takes is 
setting the policy that you don't want anything to run when the lid is 
closed and a switch to detect the lid being closed. Laptops have been 
doing this for years.


note that nothing that I have proposed would wake up a sleeping system. 
the 'every several seconds' thing that I proposed was that on a system 
that's fully awake, busy and doesn't want to sleep, there would be a 
context switch periodically by a privilaged process so that the system 
would not end up deciding it was idle and halt everything. Now that I 
think about this more, it's not needed if you want to override this to 
keep everything running for a significant amount of time, just change the 
power saving mode from "sleep if a privilaged task isn't running" to 
"disable suspend". This can be done today by changing the right sysfs 
value. normal privilaged processes would never need to do this, only 
gatekeeper daemons that want to let unprivilaged processes run even if no 
privilaged processes want to run would need to do this (i.e. in the 
current system, whatever process controls the screen would probably be 
right)


the question is what it takes to make an application privilaged like this.

what I proposed was to make it possible for the user/admin to select what 
applications are allowed to keep the system awake.

wakelocks require that the application developer decide that they want to 
keep the system awake as well as the user/admin

take your example of a mail client waking up every 15 min.

with Android it needs to be privilaged to grab the wakelock while fetching 
the mail, it also needs to use a privilaged API to set the wakeups to wake 
it up at those times.

with what I proposed all you need to do is to tag the application as power 
privilaged and then if the application sleeps for 15 min between doing 
thing the system will wake up every 15 min, work for a short time, then go 
back to sleep.


if you want to put everything to sleep when the screen blanks, that's 
trivial to do.

the fun starts when you want to say that there are some things you don't 
want to put to sleep.

do you let some processes run while halting others?
   in which case how do you prevent deadlocks?
     on the other hand, sleeping again is simple, you sleep when there 
is nothing more to run
or do you let wasteful processes run while you are awake?
   this avoids deadlocks, but how do you decide when to sleep again?


Android approaches this by requiring that any program that a user may want 
to keep running must be modified to use wakelocks.

My suggestion was that the system ignore other processes when deciding if 
the system is idle enough to put to sleep.

Yes the Android approach works reasonably well on the phones where 
everything must currently be custom developed anyway (due to screen and UI 
constraints), but as Android starts getting used on laptops and other 
larger devices is that really still the right approach? or would it be 
better to have something that could use standard software in the 
privilaged mode?

to use your example of a mail client, why should someone not be able to 
use fetchmail to get their mail instead of requiring that fetchmail be 
modified to use wavelocks (or a substatute written)?



the theoretical best approach would probably look nothing like either of 
these. Instead it would probably either

forbid privilaged processes from having blocking dependancies on 
unprivilaged processes (you can then just halt the unprivilaged processes 
when you blank the screen and let idle sleep deal with the privilged 
processes)

or

use something like priority inheritance through userspace so that if a 
privilaged process blocks on something where it's waiting for an 
unprivilaged process, that unprivilaged process gets woken up and allowed 
to run until it unblocks the privilaged process.

both of these have been deemed too hard

David Lang
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Sat Jul 31, 10:58 am)
Re: Attempted summary of suspend-blockers LKML thread, Arjan van de Ven, (Sat Jul 31, 9:52 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Sat Jul 31, 10:48 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arjan van de Ven, (Sat Jul 31, 11:01 pm)
Re: Attempted summary of suspend-blockers LKML thread, Mikael Abrahamsson, (Sat Jul 31, 11:24 pm)
Re: Attempted summary of suspend-blockers LKML thread, Mikael Abrahamsson, (Sat Jul 31, 11:49 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Sun Aug 1, 12:12 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Sun Aug 1, 12:27 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arjan van de Ven, (Sun Aug 1, 3:47 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arjan van de Ven, (Sun Aug 1, 3:49 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arjan van de Ven, (Sun Aug 1, 4:00 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Sun Aug 1, 4:02 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arjan van de Ven, (Sun Aug 1, 4:12 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Sun Aug 1, 6:10 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Sun Aug 1, 8:03 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Sun Aug 1, 8:04 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arjan van de Ven, (Sun Aug 1, 8:06 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arjan van de Ven, (Sun Aug 1, 9:05 pm)
Re: Attempted summary of suspend-blockers LKML thread, Florian Mickler, (Sun Aug 1, 10:34 pm)
Re: Attempted summary of suspend-blockers LKML thread, Florian Mickler, (Sun Aug 1, 10:44 pm)
Re: Attempted summary of suspend-blockers LKML thread, Florian Mickler, (Sun Aug 1, 11:40 pm)
Re: Attempted summary of suspend-blockers LKML thread, Florian Mickler, (Sun Aug 1, 11:53 pm)
Re: Attempted summary of suspend-blockers LKML thread, Florian Mickler, (Mon Aug 2, 12:23 am)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Mon Aug 2, 6:52 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Mon Aug 2, 7:00 am)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Mon Aug 2, 7:08 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Mon Aug 2, 7:09 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Mon Aug 2, 7:12 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Mon Aug 2, 1:36 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Mon Aug 2, 2:33 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Mon Aug 2, 3:27 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Mon Aug 2, 3:40 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Mon Aug 2, 8:21 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Mon Aug 2, 9:18 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Mon Aug 2, 9:56 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Mon Aug 2, 10:01 pm)
Re: Attempted summary of suspend-blockers LKML thread, Florian Mickler, (Tue Aug 3, 4:25 am)
Re: Attempted summary of suspend-blockers LKML thread, Florian Mickler, (Tue Aug 3, 4:26 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Tue Aug 3, 7:11 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Tue Aug 3, 8:41 am)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Tue Aug 3, 3:23 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Tue Aug 3, 3:47 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Tue Aug 3, 5:10 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Tue Aug 3, 6:09 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arjan van de Ven, (Tue Aug 3, 6:34 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Tue Aug 3, 8:39 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arjan van de Ven, (Tue Aug 3, 8:57 pm)
Re: Attempted summary of suspend-blockers LKML thread, Olivier Galibert, (Tue Aug 3, 9:58 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Tue Aug 3, 10:22 pm)
Re: [linux-pm] Attempted summary of suspend-blockers LKML ..., Arve Hjønnevåg, (Tue Aug 3, 10:43 pm)
Re: Attempted summary of suspend-blockers LKML thread, Florian Mickler, (Tue Aug 3, 10:46 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Tue Aug 3, 10:59 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Tue Aug 3, 11:03 pm)
Re: Attempted summary of suspend-blockers LKML thread, Florian Mickler, (Tue Aug 3, 11:12 pm)
Re: Attempted summary of suspend-blockers LKML thread, Olivier Galibert, (Tue Aug 3, 11:28 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Tue Aug 3, 11:50 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Wed Aug 4, 12:10 am)
Re: Attempted summary of suspend-blockers LKML thread, Florian Mickler, (Wed Aug 4, 12:35 am)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Wed Aug 4, 4:47 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 9:27 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 9:32 am)
Re: Attempted summary of suspend-blockers LKML thread, Matthew Garrett, (Wed Aug 4, 9:35 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 11:32 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 11:39 am)
Re: Attempted summary of suspend-blockers LKML thread, Matthew Garrett, (Wed Aug 4, 11:55 am)
Re: Attempted summary of suspend-blockers LKML thread, Matthew Garrett, (Wed Aug 4, 12:21 pm)
Attempted summary of suspend-blockers LKML thread, take two, Paul E. McKenney, (Wed Aug 4, 12:57 pm)
Re: Attempted summary of suspend-blockers LKML thread, Matthew Garrett, (Wed Aug 4, 12:57 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 1:08 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Wed Aug 4, 1:31 pm)
Re: Attempted summary of suspend-blockers LKML thread, Pavel Machek, (Wed Aug 4, 1:42 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Wed Aug 4, 1:43 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Wed Aug 4, 1:46 pm)
Re: Attempted summary of suspend-blockers LKML thread, Matthew Garrett, (Wed Aug 4, 1:48 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Wed Aug 4, 1:51 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 1:51 pm)
Re: Attempted summary of suspend-blockers LKML thread, Matthew Garrett, (Wed Aug 4, 1:56 pm)
Re: Attempted summary of suspend-blockers LKML thread, Pavel Machek, (Wed Aug 4, 2:15 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 2:15 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Wed Aug 4, 2:31 pm)
Re: Attempted summary of suspend-blockers LKML thread, Florian Mickler, (Wed Aug 4, 2:39 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Wed Aug 4, 3:08 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Wed Aug 4, 3:51 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 4:06 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 4:10 pm)
Re: Attempted summary of suspend-blockers LKML thread, Anca Emanuel, (Wed Aug 4, 4:13 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Wed Aug 4, 4:15 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 4:19 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Wed Aug 4, 4:26 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 4:30 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Wed Aug 4, 4:33 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Wed Aug 4, 4:40 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Wed Aug 4, 5:10 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Wed Aug 4, 5:15 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 5:17 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Wed Aug 4, 5:20 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 5:48 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Wed Aug 4, 6:02 pm)
Re: Attempted summary of suspend-blockers LKML thread, Matt Helsley, (Wed Aug 4, 6:58 pm)
Re: Attempted summary of suspend-blockers LKML thread, Brian Swetland, (Wed Aug 4, 7:02 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 7:39 pm)
Re: Attempted summary of suspend-blockers LKML thread, Brian Swetland, (Wed Aug 4, 7:46 pm)
Re: Attempted summary of suspend-blockers LKML thread, Matt Helsley, (Wed Aug 4, 8:25 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 8:59 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Wed Aug 4, 9:05 pm)
Re: Attempted summary of suspend-blockers LKML thread, Florian Mickler, (Wed Aug 4, 10:33 pm)
Re: Attempted summary of suspend-blockers LKML thread, Florian Mickler, (Wed Aug 4, 10:56 pm)
Re: Attempted summary of suspend-blockers LKML thread, Matthew Garrett, (Thu Aug 5, 6:38 am)
Re: Attempted summary of suspend-blockers LKML thread, Matthew Garrett, (Thu Aug 5, 6:40 am)
Re: Attempted summary of suspend-blockers LKML thread, Matthew Garrett, (Thu Aug 5, 6:47 am)
Re: Attempted summary of suspend-blockers LKML thread, Matthew Garrett, (Thu Aug 5, 7:16 am)
Re: Attempted summary of suspend-blockers LKML thread, Brian Swetland, (Thu Aug 5, 7:23 am)
Re: Attempted summary of suspend-blockers LKML thread, Brian Swetland, (Thu Aug 5, 7:29 am)
Re: Attempted summary of suspend-blockers LKML thread, Matthew Garrett, (Thu Aug 5, 7:33 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Thu Aug 5, 8:12 am)
Re: Attempted summary of suspend-blockers LKML thread, Brian Swetland, (Thu Aug 5, 8:15 am)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Thu Aug 5, 8:34 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Thu Aug 5, 11:09 am)
Re: Attempted summary of suspend-blockers LKML thread, kevin granade, (Thu Aug 5, 11:13 am)
Re: Attempted summary of suspend-blockers LKML thread, Brian Swetland, (Thu Aug 5, 11:20 am)
Re: [linux-pm] Attempted summary of suspend-blockers LKML ..., Paul E. McKenney, (Thu Aug 5, 11:21 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Thu Aug 5, 1:31 pm)
Re: Attempted summary of suspend-blockers LKML thread, kevin granade, (Thu Aug 5, 1:51 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Thu Aug 5, 3:02 pm)
Re: Attempted summary of suspend-blockers LKML thread, Brian Swetland, (Thu Aug 5, 3:16 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Thu Aug 5, 4:03 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Thu Aug 5, 4:05 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Thu Aug 5, 4:19 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Thu Aug 5, 4:41 pm)
Re: Attempted summary of suspend-blockers LKML thread, Brian Swetland, (Thu Aug 5, 5:13 pm)
Re: Attempted summary of suspend-blockers LKML thread, Brian Swetland, (Thu Aug 5, 5:22 pm)
Re: Attempted summary of suspend-blockers LKML thread, Brian Swetland, (Thu Aug 5, 5:29 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Thu Aug 5, 5:42 pm)
Re: Attempted summary of suspend-blockers LKML thread, Brian Swetland, (Thu Aug 5, 6:22 pm)
Re: Attempted summary of suspend-blockers LKML thread, Arve Hjønnevåg, (Thu Aug 5, 6:29 pm)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Fri Aug 6, 9:00 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Fri Aug 6, 10:09 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Fri Aug 6, 10:22 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Fri Aug 6, 10:24 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Fri Aug 6, 11:18 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Fri Aug 6, 5:36 pm)
Re: Attempted summary of suspend-blockers LKML thread, Rafael J. Wysocki, (Sat Aug 7, 2:01 am)
Re: Attempted summary of suspend-blockers LKML thread, tak ..., david, (Sat Aug 7, 2:38 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Sat Aug 7, 7:36 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Sat Aug 7, 8:07 am)
Re: Attempted summary of suspend-blockers LKML thread, Paul E. McKenney, (Sat Aug 7, 2:11 pm)
Re: Attempted summary of suspend-blockers LKML thread, Felipe Contreras, (Sun Aug 8, 6:35 am)
Re: Attempted summary of suspend-blockers LKML thread, Matthew Garrett, (Sun Aug 8, 9:08 am)
Re: Attempted summary of suspend-blockers LKML thread, Felipe Contreras, (Sun Aug 8, 10:08 am)
Re: Attempted summary of suspend-blockers LKML thread, Matthew Garrett, (Sun Aug 8, 10:09 am)
Re: Attempted summary of suspend-blockers LKML thread, tak ..., Felipe Contreras, (Wed Aug 11, 12:18 pm)
Re: Attempted summary of suspend-blockers LKML thread, tak ..., Felipe Contreras, (Wed Aug 11, 12:25 pm)
Re: Attempted summary of suspend-blockers LKML thread, Felipe Contreras, (Wed Aug 11, 5:23 pm)
Re: Attempted summary of suspend-blockers LKML thread, tak ..., Paul E. McKenney, (Thu Aug 12, 10:43 am)
Re: Attempted summary of suspend-blockers LKML thread, tak ..., Felipe Contreras, (Thu Aug 12, 10:52 am)
Re: Attempted summary of suspend-blockers LKML thread, tak ..., Paul E. McKenney, (Thu Aug 12, 11:38 am)
Re: Attempted summary of suspend-blockers LKML thread, tak ..., Felipe Contreras, (Thu Aug 12, 12:00 pm)
Re: [linux-pm] Attempted summary of suspend-blockers LKML ..., Dominik Brodowski, (Thu Aug 12, 12:27 pm)
Re: Attempted summary of suspend-blockers LKML thread, tak ..., Felipe Contreras, (Thu Aug 12, 12:34 pm)
Re: [linux-pm] Attempted summary of suspend-blockers LKML ..., Dominik Brodowski, (Thu Aug 12, 12:52 pm)
Re: [linux-pm] Attempted summary of suspend-blockers LKML ..., Felipe Contreras, (Fri Aug 13, 3:43 am)
Re: [linux-pm] Attempted summary of suspend-blockers LKML ..., Dominik Brodowski, (Fri Aug 13, 8:57 am)
Re: [linux-pm] Attempted summary of suspend-blockers LKML ..., Dominik Brodowski, (Fri Aug 13, 9:19 am)
Re: [linux-pm] Attempted summary of suspend-blockers LKML ..., Felipe Contreras, (Fri Aug 13, 9:19 am)
Re: [linux-pm] Attempted summary of suspend-blockers LKML ..., James Bottomley, (Fri Aug 13, 10:11 am)
Re: Attempted summary of suspend-blockers LKML thread, tak ..., Paul E. McKenney, (Fri Aug 13, 10:13 am)
Re: Attempted summary of suspend-blockers LKML thread, tak ..., Paul E. McKenney, (Sun Aug 15, 12:00 am)
Re: [linux-pm] Attempted summary of suspend-blockers LKML ..., Rafael J. Wysocki, (Mon Aug 16, 2:11 pm)