Re: [linux-pm] [PATCH 0/8] Suspend block api (version 8)

Matthew Garrett
2010-05-27T21:08:25Z

On Thu, May 27, 2010 at 09:53:47PM +0100, Alan Cox wrote:
> > Not lost, but not delivered. So you need your policy agent to send
>
> it will be delivered next time the process wakes. It's not lost.
>
> > SIGCONT when you receive any wakeup event, which either means proxying
> > all your network traffic through your policy agent or having some
> > mechanism for alerting the policy agent whenever you leave the deep idle
> > state.
>
> You didn't mention that requirement last time.

I thought it was pretty obvious that wakeup events had to actually be
delivered to the applications that are listening for them.

> > > > also the race of an application being in the middle of handling a wakeup
> > > > event when you send it the signal.
> > >
> > > sigmask()
> >
> > Doesn't help - I may be hit by the signal between the poll() unblocking
> > and me having the opportunity to call sigmask().
>
> ppoll(). This is all existing solved stuff.

Isn't that the inverse of what we want? The application should default
to being SIGSTOPpable except in the case of it being in the process of
having a specific event delivered.

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