Re: [RFD] Automatic suspend

From: Pavel Machek
Date: Fri Feb 27 2009 - 05:15:56 EST


On Mon 2009-02-23 15:04:22, Oliver Neukum wrote:
> Am Sonntag 22 Februar 2009 15:03:11 schrieb Pavel Machek:
> > Hi!
> >
> > > > Again, the decision to trigger automatic suspend has to be based on
> > > > some well defined criteria and the (in)activity of devices seems to be
> > > > one of them.
> > >
> > > I don't know what criteria the system monitor would use. It might have
> > > to be platform-specific. The Android people seem to have a pretty good
> > > idea of what criteria will work for them.
> > >
> > > Inactivity of devices isn't always a good criterion. There might be a
> > > background task which wakes up every few seconds to do something as
> > > long as the system is awake, thereby keeping some device always active.
> > > The activity from this background task shouldn't prevent an auto-sleep.
> >
> > Then we'd need a interface to mark such background task... and what is
> > reasonable use for such task, anyway? Either its job is neccessary, or
> > it should not waste power.
>
> Why? We have decided that some tasks are more important than
> other tasks, to the point of starving some tasks. Posix real time
> already does that.
>
> We can just as well have a class of tasks less important than power
> saving. They'd just run when power saving is not active for some other
> reason. Just like other such schemes we end up with the problem
> of priority inversion with locking.

Ok, I guess this could be interesting in some cases... maybe. What are
real examples of such tasks?

Note that this will be fairly hard to implement due to all the
priority inversions; so it better be pretty important.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/