On Thu, May 27, 2010 at 08:53:33PM +0100, Alan Cox wrote: > On Thu, 27 May 2010 20:29:26 +0100 > Matthew Garrett <mjg59@xxxxxxxxxxxxx> wrote: > > But wakeup events won't be delivered to STOPped processes, and there's > > Try the following > > cat <pipe > kill -STOP catpid > > echo "wombats are cool" > pipe > kill -CONT catpid > > it will echo "wombats are cool" > > The event was not lost. Not lost, but not delivered. So you need your policy agent to send 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. > > 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(). -- Matthew Garrett | mjg59@xxxxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html