On Fri, May 28, 2010 at 12:11 AM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote: > On Fri, 2010-05-28 at 00:31 -0400, tytso@xxxxxxx wrote: >> Keep in mind, though, that a solution which is acceptable for Android >> has to include making sure that crappy applications don't cause the >> battery to get drained. There seem to be some people who seem >> adamently against this requirement. > > Again, Alan, Thomas and myself don't argue against that, what we do > however argue against is suspend running apps as a form of power > management. > You seem to argue that android is not allowed to use suspend because the hardware we have shipped on can enter the same power state from idle. From my point of view, since we need to support suspend on some hardware we should be allowed to leverage this solution on the better hardware platforms as well if it improves our battery life. > If you were to read Alan's latest posts he clearly outlines how you can > contain crappy apps. > I have not seen any suggestions for how to deal with all our interprocess dependencies when pausing a subset of processes. Without a solution to that we can only pause a subset of the processes we want to pause. > A combination of weakening QoS guarantees (delaying wakeups etc.) > blocking on resources (delay servicing requests) and monitoring resource > usage (despite all that its still not idle) and taking affirmative > action (shoot it in the head). > > If we pose that a well behaved application is one that listens to the > environment hints and idles when told to, we can let regular power > management kick in and let deep idle states do their thing. > > If a bad application ignores those hints and manages to avoid getting > blocked on denied resources, we can easily spot it and promote an > attitude of violence toward it in the form of SIGXCPU, SIGSTOP, SIGTERM > and SIGKILL, possibly coupled with a pop-up dialog -- much like we get > today when we try to close a window and the app isn't responding. > > If we then also let the environment maintain a shitlist of crappy apps > (those it had to take affirmative action against) and maybe set up a > service that allows people to share their results, it provides an > incentive to the app developers to fix their thing. > > How is this not working? > These solutions do not allow us to use suspend. They may get us closer to the power consumption we get from suspend on the good hardware or even surpass it, but we still need suspend on some hardware, and we would get event better results by using these solutions in addition to suspend compared to using them instead of suspend. -- Arve Hjønnevåg _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm