Re: [PATCH 1/8] PM: Opportunistic suspend support.

From: Rafael J. Wysocki
Date: Wed May 26 2010 - 18:03:19 EST


On Wednesday 26 May 2010, Matthew Garrett wrote:
> On Wed, May 26, 2010 at 02:57:45PM +0200, Peter Zijlstra wrote:
>
> > I fail to see why. In both cases the woken userspace will contact a
> > central governing task, either the kernel or the userspace suspend
> > manager, and inform it there is work to be done, and please don't
> > suspend now.
>
> Thinking about this, you're right - we don't have to wait, but that does
> result in another problem. Imagine we get two wakeup events
> approximately simultaneously. In the kernel-level universe the kernel
> knows when both have been handled. In the user-level universe, we may
> have one task schedule, bump the count, handle the event, drop the count
> and then we attempt a suspend again because the second event handler
> hasn't had an opportunity to run yet. We'll then attempt a suspend and
> immediately bounce back up. That's kind of wasteful, although it'd be
> somewhat mitigated by checking that right at the top of suspend entry
> and returning -EAGAIN or similar.

I still think it would cause a loop-alike behavior between the user space
power manager and the kernel PM core to happen, because the power manager
will always have to check the user space counter after a failing suspend
attempt.

Rafael
--
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/