On Thu, Aug 5, 2010 at 7:34 AM, <david@lang.hm> wrote:
If your network interrupt happens before the network driver's
suspend() hook is called this works -- the check in the suspend hook
observes the change and returns an abort status.
If your network interrupt happens after the suspend() hook is called
this does not work -- the event comes after your opportunity to abort
suspend has happened, your interrupt handler processed it, set the
flag, but the system proceeds to suspend anyway, missing the event.
The wakelock/suspendblock mechanism avoids races like the above.
Brian
--