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

From: Matthew Garrett
Date: Sat May 15 2010 - 15:55:03 EST


On Thu, May 13, 2010 at 02:34:55PM -0700, Tony Lindgren wrote:
> * Matthew Garrett <mjg@xxxxxxxxxx> [100513 14:16]:
> > What race-free mechanism do you use to ensure that? It's very easy to
> > handwave these problems away. It's very difficult to actually write an
> > implementation that works.
>
> Can you describe where do you see the race now?

1) Trusted app decides to suspend
2) Network packet that would otherwise wake the system is received
3) Trusted app sends SIGSTOP to untrusted userspace
4) Network packet sits waiting for stopped userspace to process it

Unless the trusted userspace gets woken up on every event that would
potentially cause a wakeup, you're racy. And the alternative involves an
extra userspace wakeup for every network packet - which is expensive.

--
Matthew Garrett | mjg59@xxxxxxxxxxxxx
--
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/