Re: [PATCH 1/8] PM: Add suspend block api.

Matthew Garrett
2010-05-07T17:50:25Z

On Fri, May 07, 2010 at 10:35:49AM -0700, Tony Lindgren wrote:
> * Matthew Garrett <mjg@redhat.com> [100507 10:08]:
> > The situation is this. You've frozen most of your userspace because you
> > don't trust the applications. One of those applications has an open
> > network socket, and policy indicates that receiving a network packet
> > should generate a wakeup, allow the userspace application to handle the
> > packet and then return to sleep. What mechanism do you use to do that?
>
> I think the ideal way of doing this would be to have the system running
> and hitting some deeper idle states using cpuidle. Then fix the apps
> so timers don't wake up the system too often. Then everything would
> just run in a normal way.

Effective power management in the face of real-world applications is a
reasonable usecase.

> For the misbehaving stopped apps, maybe they could be woken
> to deal with the incoming network data with sysfs_notify?

How would that work? Have the kernel send a sysfs_notify on every netwrk
packet and have a monitor app listen for it and unfreeze the rest of
userspace if it's frozen? That sounds expensive.

--
Matthew Garrett | mjg59@srcf.ucam.org